erreur php, tres bizzare...

Statut
N'est pas ouverte pour d'autres réponses.

Styleman

Touriste
Bonjour,
Voila chuis un noob, j'ai fais un truc comme on m'a expliqué, donc une page qui affiche des données

Voila lap age en question:
Code:
<?
   if (empty($id)) {
   $sql="SELECT id, titre FROM test_tbl ORDER BY id DESC";
   $result = mysql_query($sql);
   $NbRep = mysql_num_rows($result);
   if ($NbRep !=0) {
        while ($ligne = mysql_fetch_array($result)){
             echo "<a 

href=\"test.php?id=".$ligne[0]."\">".$ligne[2]."</a><br>"; 
   }
}
else {
    $sql="SELECT * FROM test_tbl WHERE id = $id";
    $result = mysql_query($sql);
    $NbRep = mysql_num_rows($result);
    if ($NbRep !=0) {
         $ligne = mysql_fetch_array($result);
         echo "Titre: ".$ligne[2]."<br>";

    }
    else {
       echo "Il n'y a pas de test ayant cet id";
     mysql_close();
     }
}
?>
et il me met : Parse error: parse error in /home2/www/expert-gamers/pse/test.php on line 27

Pourtant, la ligne 27, c'est: ?>

Comment peut il il y a voir une erreur la dedans?

Enfin je continue a chercher, si quelqu'un a une idee...thx
 
1er
OP
S

Styleman

Touriste
bon now j'ai la meme chose mais line 30, parce ke j'ai juste rajouter 2 ligne pour me connecter a la base...enfin, c toujours la meme chose koi, toujours la ligne "?>" qui foire...
:cry: :cry:
 
R

RedCross

ex membre
je pense déjà qu'il te manque une } à la fin :wink:
 

La Poubelle

Pou'r allé Danché
Code:
<? 
   if (empty($id)) { 
   $sql="SELECT id, titre FROM test_tbl ORDER BY id DESC"; 
   $result = mysql_query($sql); 
   $NbRep = mysql_num_rows($result); 
   if ($NbRep !=0) { 
        while ($ligne = mysql_fetch_array($result)){ 
             echo "<a 

href=\"test.php?id=".$ligne[0]."\">".$ligne[2]."</a><br>"; 
   } 
} 
else { 
    $sql="SELECT * FROM test_tbl WHERE id = $id"; 
    $result = mysql_query($sql); 
    $NbRep = mysql_num_rows($result); 
    if ($NbRep !=0) { 
         $ligne = mysql_fetch_array($result); 
         echo "Titre: ".$ligne[2]."<br>"; 

    } 
    else { 
       echo "Il n'y a pas de test ayant cet id"; 
     mysql_close(); 
     } 
}
Pour pouvoir lire correctement du code , on le présente proprement déjà

Aligner le code par rapport aux parenthèse dans les fonctions, les boucles, et les if.

C'est le minimum


Code:
<? 
   if (empty($id))
       { 
       $sql="SELECT id, titre FROM test_tbl ORDER BY id DESC"; 
       $result = mysql_query($sql); 
      $NbRep = mysql_num_rows($result); 
      if ($NbRep !=0)
         { 
         while ($ligne = mysql_fetch_array($result))
            { 
            echo "<a href=\"test.php?id=".$ligne[0]."\">".$ligne[2]."</a><br>"; 
            } 
         } 
      else
         { 
         $sql="SELECT * FROM test_tbl WHERE id = $id"; 
         $result = mysql_query($sql); 
         $NbRep = mysql_num_rows($result); 
         if ($NbRep !=0)
             { 
             $ligne = mysql_fetch_array($result); 
             echo "Titre: ".$ligne[2]."<br>"; 
             } 
         else
             { 
             echo "Il n'y a pas de test ayant cet id"; 
             mysql_close(); 
             } 
         }
Ca me donne même pas envie de lire le code sinon

Dans ta table , tu séléctionnes que deux champs (donc fields 0 et 1) et tu demandes d'inscrire le champs n° 2 ????
 
1er
OP
S

Styleman

Touriste
bah lis pas alors...si c pour dire ça laisse tomber...
 

La Poubelle

Pou'r allé Danché
Styleman a dit:
bah lis pas alors...si c pour dire ça laisse tomber...
Va dans les news de programmation et mets ton code ainsi, déjà que peu de personne réponde , mais si tu présentes ca comme un porc, c'est du suicide.

Mes tartines de codes si je code comme toi, je pourrais m'y retrouver sur le moment même, mais trois mois plus tard, ca donnera quoi.

UN CODE ET LES VARIABLES DOIT ETRE CLAIR, C'EST TOUT.

Si tu comprends pas ca, arrête la programmation.
 
1er
OP
S

Styleman

Touriste
sorry, mais bon, le code n'est pas de moi a la base, et il etait come ça, sinon la, je demande d'inscrire le 2 parce ke la, c juste pour tester, kan y'aura plus d'erreur, je continuerais l'affichage du reste
 
R

RedCross

ex membre
lol, Again, le marrant.
On est pas ici pour donner des leçons non plus, mais pour l'aider.
OK, faut être clair dans la façon de coder, je suis d'accord avec toi, mais bon, y amoyen de lui dire gentiment tout en aidant à règler son problème. :wink:

Bon, alors, on en est où avec ce fameux problème?
C'est réglé ou pas ?
:)
 
1er
OP
S

Styleman

Touriste
ben la c-a-d ke je suis en plein HDD probleme lol, mais bon je remet a ça ne tatendant les reponse pour mon new HDD, je reviens :wink:
 

La Poubelle

Pou'r allé Danché
Sorry,

J'ai passé toute la semaine de refaire un intranet qui a été fait par un fou qui aligne tous à gauche avec des variables très explicite du genre X, Y, STR, ....

Disons qu'il est très important d'aligner ses caractères pour se relire et pour détécter ses erreurs.

Même si une erreur provient soit disant d'une ligne, c'est seulement une indication qui faut prendre avec des pincettes. Comme l'a dit RedCross, un } manquant ou de trop même cinquante ligne avant peut générer de telles erreurs.

Le seul moyen de localiser serieusement une erreur est d'inscrire (echo) ou response.write en ASP a differents endroits pour essayer de repérer la vrai erreur. C'est barbare et lourdingue, mais c'est encore assez efficace.
 
1er
OP
S

Styleman

Touriste
ok merci bcp all, ça va now :wink:
Ok Again je m'en rappel pour la prochaine fois, ce n'est que mes debuts et tes consiles me sont precieux, THX bcp tout le monde
 

Neohlogix

Ailleur
Pour ton erreur, ton code est en effet la cause de cette erreur.
le prob vient de la ligne avec
echo"<a

href=\"test.php?id=".$ligne[0]."\">".$ligne[2]."</a><br>";

ca passe pas ca en php. Par contre ca oui:
Code:
echo"<a href=\"test.php?id=".$ligne[0]."\">".$ligne[2]."</a><br>";
Mais bon j'espere que t'as pas que ca dans ton script because t as aucune ouverture ni fermeture de db dans ce que je vois.

AGain a dit:
Dans ta table , tu séléctionnes que deux champs (donc fields 0 et 1) et tu demandes d'inscrire le champs n° 2 ????
Euh c est pas un numéro de champ c est une var de l'array qu'il appelle. pour autant qu il ai un 2 = "VariableXY" dans ces valeurs d'array c est bon.
 
1er
OP
S

Styleman

Touriste
NeoH a dit:
Pour ton erreur, ton code est en effet la cause de cette erreur.
le prob vient de la ligne avec
echo"<a

href=\"test.php?id=".$ligne[0]."\">".$ligne[2]."</a><br>";

ca passe pas ca en php. Par contre ca oui:
Code:
echo"<a href=\"test.php?id=".$ligne[0]."\">".$ligne[2]."</a><br>";
Mais bon j'espere que t'as pas que ca dans ton script because t as aucune ouverture ni fermeture de db dans ce que je vois.

AGain a dit:
Dans ta table , tu séléctionnes que deux champs (donc fields 0 et 1) et tu demandes d'inscrire le champs n° 2 ????
Euh c est pas un numéro de champ c est une var de l'array qu'il appelle. pour autant qu il ai un 2 = "VariableXY" dans ces valeurs d'array c est bon.
ok, pour le lien, c'est le retour a la ligne qui ne va pas c'est ça? me semble quej 'ai une autre page comme ça et que ça foncitonne, mais bon, si tu le dis, c surement ça, je m'en vais modifier, merci bcp, et ouis il y a un 2 dans le truc array la ke tu a expliker a again se ke j'appelais...
 

Neohlogix

Ailleur
ben tu peux avoir des retours de ligne affiché a l'écran mais qui n'en sont pas vraiment (Line break) ca dépends avec quoi tu édites ton code.
 
1er
OP
S

Styleman

Touriste
NeoH a dit:
ben tu peux avoir des retours de ligne affiché a l'écran mais qui n'en sont pas vraiment (Line break) ca dépends avec quoi tu édites ton code.
Ben...pour tout te dire, kan je saurais c'est quoi, on reprendra la discution lol, a moins ke tu ne m'explike, ce qui serais tres interressant, ou alors un lien vers une page explicative...

Voila, merci bcp
JE v de ce pas continuer mon apprentissage :D
 

Carambar

Elite
Il ne manquerais pas un "<?php" au début :D ?
 
R

RedCross

ex membre
Fearless a dit:
Il ne manquerais pas un "<?php" au début :D ?
t pas obligé, enfin, ça dépend comment est configuré le serveur aussi, mais par défaut, tu peux coder <? ou <?php , tu peux même mettre <script language="PHP">. :wink:
 
1er
OP
S

Styleman

Touriste
oui en effet, mais sur ma page, il y est ne t'inkeite pas, je ne l'ai pas copier la sur ce post, mais sinon il y est... :wink:
 

dRex

Xaxaxa
lol j'ai un truc bizaroide en vb (exell) moi...

Code:
        If cel.Value = lettre Then
            cel.Offset(-1, 0) = lettre
            ltrouve = 1
        Else
            ltrouve = 0
        End If
quand am condition est juste, il execute
Code:
cel.Offset(-1, 0) = lettre
puis suate direct à
Code:
ltrouve = 0
qui devrian pas s'execuetr vu que la condition est juste... en passant par dessus le
Code:
ltrouve = 1
 

Carambar

Elite
Je crois avoir trouvé ce qui ne va pas. Je retranscrit le code juste au niveau de la structure (pour plus de clareté en omettant les instructions à l'intérieur :

Code:
if(empty($id))
	{
	...
	if ($NbRep !=0)
		{ 
		while ($ligne = mysql_fetch_array($result))
			{ 
			...
			} 
		} 
	else
		{ 
		...
		if ($NbRep !=0)
			{ 
			... 
			} 
		else
			{ 
			...
			} 
		}
	} // <=== !
Il y a un premier if qui est ouvert au début mais qui n'est pas fermé à la fin. Il suffirais de rajouter un } à la fin.

P.S: J'ai oublié le nom de ce symbole { . C'est n'est pas un crochet :p ...
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut