Version complète: sur le forum Webmaster Hub : php parse error bizarre
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
ramy
Voici le code en question :
CODE
$car = array("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z",
"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",
"0","1","2","3","4","5","6","7","8","9");

$mot = '';
$i = 200;
{
while ($i>62)
{
$a = $i%62;
$mot = $mot.$car[$a];
$i = $i-$a;
}
$mot = $mot.$car[$i];
echo $mot;


ET voici le message d'erreru
CITATION
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ')' in .../md5.php on line 3


**la ligne 3 correspond a l'array $car

J'ai beau chercher, je trouve pas...

edit : g mis le tableau sur 3 ligne tongue.gif
Anonymus
CITATION(ramy @ samedi 15 octobre 2005, 01h21)
Voici le code en question :
CODE

$car = array("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g,""h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","9");

$mot = '';
$i = 200;
{
while ($i>62)
{
$a = $i%62;
$mot = $mot.$car[$a];
$i = $i-$a;
}
$mot = $mot.$car[$i];
echo $mot;


ET voici le message d'erreru
**la ligne 3 correspond a l'array $car

J'ai beau chercher, je trouve pas...
*


Tu as un problème à ce niveau :
CODE
"g,""h","i",

Anonymus.

edit : et moi, en codebox wink.gif
ramy
merci happy.gif

*j'ai edité...

maintenant j'ai droit a :
CODE
Parse error: parse error, unexpected $ in /var/www/free.fr/8/4/julesetjuly/contrib/md5.php on line 16


...que je comprenne pourquoi...
Anonymus
Ca serait plus facile avec les... 16-17 premières lignes du fichier en question (contrib/md5.php)

Merci.
ps : Cependant, il y a forcément une erreur ici :
CODE
$i = 200;
{
while ($i>62)

L'accolade n'a rien à faire dans ce cas, tu peux l'enlever.
ramy
CITATION(Anonymus @ samedi 15 octobre 2005, 00h32)
Ca serait plus facile avec les... 16-17 premières lignes du fichier en question


blink.gif Elles y sont...

De plus apres avoir corriger toute mes erreurs
j'obtiens un
CODE
Fatal error: Maximum execution time of 30 seconds exceeded in .../md5.php on line 10



line 10 <=> $mot = $mot.$car[$a];

c'est moi ou il me cherche... pissed.gif
Boo2M0rs0
Bonsoir,

Premièrement, si ton but est de faire une fonction qui fait le hash md5, tu as déjà de jolies fonctions intégrées à php: md5() et md5_file() wink.gif

Pour ton script, c'est essentiellement la boucle while qui pose problème, et ça reste encore simple à voir car le bloquage se situe lors de la deuxième boucle seulement.
Voici comment j'ai résumer la chose:
$i=200;
$i>62 donc on commence la boucle
$a = reste de la division euclidienne de $i par 62 ( = 14 )
/*Instruction quelconque*/
$i = $i - $a ( = 200 - 14 = 186 )
---
$i est toujours plus grand que 62 donc on fait encore une boucle
$a = $i % 62 ( donc 186 % 62 le reste est 0 !!! )
/*Instruction quelconque*/
$i = $i - 0 (donc $i n'a pas changé !!!!)

Le cycle suivant de la boucle se passera exactement de la même facon car $i est toujours égal à 184 ...
Je ne connais pas les algorythmes de md5 mais je ne pense pas que ceux-ci soient conçus pour faire des boucles infinies wacko.gif
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.