Parse Error

rayon-gama
Invité n'ayant pas de compte PHPfrance

28 oct. 2010, 21:51

Bonjour , j'étais (encore) entrain de codé un script php, quand j'ai eu ce fameux "parse error" je me suis dit "Au mince encore un oublie de ";" ou de "}" sauf que le problème ce que j'ai quasiment cherche pendant une heure (je déconne pas :) ) et je n'est trouvé aucune erreur dans mon script j'espère que vous allez pouvoir m'aider :
<?php

//On charge les divers informations 
try	
{
	$bdd = new PDO('mysql:host=localhost;dbname=new_time', 'root', '');
}
catch (Exception $e)
{
	die('Erreur : ' . $e->getMessage());
}
$reponse = $bdd->query('SELECT * FROM user WHERE user=\'' . $_SESSION['pseudo'] .'\'' );
while ($donnees = $reponse->fetch()) 
{
	$name = donnees['name_planete'];
	$temperature_min = donnees['temperature_min'];
	$temperature_max = donnees ['temperature_max'];
	$metal = donnees ['metal'] ;
	$cristal = donnees ['cristal'] ;
	$kryptonite = donnees ['kryptonite'];
	$mine_m = donnees ['mine_m'];
	$mine_c = donnees['mine_c'];
	$mine_k = donnees ['mine_k'] ;	
}

$reponse->closeCursor(); // Termine le traitement de la requête	
?>
Plus de précision sur l'erreur :

Code : Tout sélectionner

Parse error: parse error in C:\wamp\www\New Time\include\planete.php on line 15
Merci d'avance de votre aide , cordialement Rayon-gama.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

28 oct. 2010, 21:55

        $name = donnees['name_planete'];
        $temperature_min = donnees['temperature_min'];
        $temperature_max = donnees ['temperature_max'];
        $metal = donnees ['metal'] ;
        $cristal = donnees ['cristal'] ;
        $kryptonite = donnees ['kryptonite'];
        $mine_m = donnees ['mine_m'];
        $mine_c = donnees['mine_c'];
        $mine_k = donnees ['mine_k'] ;  
Manquerait pas quelques $ à tes variables $donnees ? ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

ViPHP
ViPHP | 5462 Messages

28 oct. 2010, 22:42

et oublie pas de gérer tes erreurs avec PDO : sql-bases-donnees/gestion-des-erreurs-m ... 55306.html :wink:

rayon-gama
Invité n'ayant pas de compte PHPfrance

29 oct. 2010, 00:06

Merci pour vos réponses.

rayon-gama
Invité n'ayant pas de compte PHPfrance

29 oct. 2010, 21:31

Rebonjour, désoler de vous redéranger mais j'ai encore un soucis avec mes scripts je vous assure que j'ai encore chercher mais impossible de trouver d'où viens l'erreur.

Voici le script en question :

<?php
session_start();
if (isset ($_POST['new_name']) AND isset($_POST['renommer']))
{
	// On rénomme la planete
	try
	{
		$bdd = new PDO('mysql:host=localhost;dbname=new_time', 'root', '');
	}
	catch(Exception $e)
	{
        die('Erreur : '.$e->getMessage());
	}

	// On modifie le nom de la planete
	$bdd->exec('UPDATE user SET name_planete =\'' . $_POST['new_name'] . '\'  WHERE user =\'' . $_SESSION['pseudo'] . '\'');
	echo 'Le nom a bien été modifié !';
	echo"</br> <a href='game.php'>Retour</a>";
}
elseif (isset ($_POST['mine_m_new']))
{
	if ($_SESSION['mine_m_lvl'] == $_SESSION['level_max_m'])
	{
		echo "Votre mine à atteind son niveau maximum";
	}
	elseif($_SESSION['metal'] < $_SESSION['metal_n_m'] OR $_SESSION['cristal'] < $_SESSION['metal_n_c'] OR $_SESSION['kryptonite'] < $_SESSION['metal_n_k'])
	{
		echo "Vous n'avez pas assez de ressource !";
	}
	else
	{
		//On
		try
		{
			$bdd = new PDO('mysql:host=localhost;dbname=new_time', 'root', '');
		}
		catch(Exception $e)
		{
        	die('Erreur : '.$e->getMessage());
		}

		// On ajoute un niveau à la mine
		$_SESSION['mine_m_lvl'] = $_SESSION['mine_m_lvl'] + 1 ;
		$bdd->exec('UPDATE user SET mine_m_lvl =' . $_SESSION['mine_m_lvl'] . '  WHERE user =\'' . $_SESSION['pseudo'] . '\'');
		echo 'Votre mine à bien évolué jusqu\'au niveau ' . $_SESSION['mine_m_lvl'] . ' !';
		echo"</br> <a href='game.php'>Retour</a>";	
	}
else
{
	echo " Raté ";
}
?>
Et voici le message d'erreur :

Code : Tout sélectionner

Parse error: parse error in C:\wamp\www\New Time\action.php on line 48
Encore un fois merci d'avance pour votre aide, cordialement Rayon-gama.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

29 oct. 2010, 21:50

L'erreur est ligne 48 et provient de ton else qui n'est pas à l'endroit attendu par rapport ta une structure if/else. Où se termine ton elseif :
elseif (isset ($_POST['mine_m_new']))
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

rayon-gama
Invité n'ayant pas de compte PHPfrance

29 oct. 2010, 21:56

Encore merci. Et tout ça pour un "}" ^^

Cordialement Rayon-gama.