requete mySql error
Forum Programmation : requete mySql error
salut.
je debut en PHP & MySql.
pour debuter j`ai fais un test PHP pour voir si tout
fonctionne bien apres l`installation de EasyPHP.
Dans le dosier "EsayPHP" j`ai cree un dosier "WWW"
ou je met les fichiers( .php) que je cree, quand je test un fichier .php pour PHP, avec un test tout vas bien.
Mais pour le test Mysql avec le fichier que voici,
toujour dans mon dossier "WWW"
<html>
<head>
<title> Test de MySql</title>
<body>
<!-- test-mysql.php -->
<?php
$host="hostname";
$user="mysqlaccount";
$password="mysqlpassword";
mysql_connect($host,$user,$password);
$sql="show satus";
$result= mysql_query($sql);
if ($result == 0);
echo("<b>erreur " . mysql_errno() . " : " .mysql_error() . "</b>;
elseif (mysql_num_rows($result) == 0)
echo("<b>Requete executer avec succes</b>" );
else
{
?>
<!--Tableau affichant les resultats -->
<table border=>>1>> >
<tr><td><b>nom de la varible</b></td><td><b>Valeur</b></td></tr>
<?php
for ($i = 0 ; $i < mysql_fetch_row($result); $j++) {
echo("<tr>" );
$row_array = mysql_fetch_row($result);
for ($j = 0; $j < mysql_num_fields($result); $j++) {
echo("<td>" . $row_array[$j] . "<td>" );
}
echo("</tr>" );
}
?>
</table>
<?php } ?>
</body>
</html>
et Voici le message d`erreur.
Parse error: parse error in c:\program files\easyphp1-8\www\test\test-mysql.php on line 17
pouvez vous m`aider sur se sujet.
merci d`avance.
KsaM
A la ligne 17, ou un peut avant, ou un peut apres, tu as oublier une quote, ou un { } ou encore un ;
merci.
je vois une erreur a la ligne 14 ,, oublie de fermer
avec " ) ".
Merci d`avoir pris le temp de me repondre.
je fais le test et je revien donner les resultat.
ksaM
salut.
j`ai corriger 2 erreur mais la je vois pas ce qui
ne vas pas voici le dernier message d`erreur:
Parse error: parse error in c:\program files\easyphp1-8\www\test\test-mysql.php on line 16
et voici le nouveau fichier .php:
<html>
<head>
<title> Test de MySql</title>
<body>
<!-- test-mysql.php -->
<?php
$host="hostname";
$user="mysqlaccount";
$password="mysqlpassword";
mysql_connect($host,$user,$password);
$sql="show satus";
$result= mysql_query($sql);
if ($result == 0);
echo("<b>erreur " . mysql_errno() . " : " .mysql_error() . "</b>" );
elseif (mysql_num_rows($result) == o)
echo("<b>Requete executer avec succes</b>" );
else
{
?>
<!--Tableau affichant les resultats -->
<table border=>>1>> >
<tr><td><b>nom de la varible</b></td><td><b>Valeur</b></td></tr>
<?php
for ($i = 0 ; $i < mysql_fetch_row($result); $j++) {
echo("<tr>" );
$row_array = mysql_fetch_row($result);
for ($j = 0; $j < mysql_num_fields($result); $j++) {
echo("<td>" . $row_array[$j] . "<td>" );
}
echo("</tr>" );
}
?>
</table>
<?php } ?>
merci D`avance pour votre aide
KsaM
Code :
|
Voila le code corriger, plusieurs ereur :
1) les if, tu ne méttais qu'une accolade dans le else, c'est faux, elle doit etre présent a chaque interprétation d'un if, elseif, else...
2) lorsque tu compare quelque chose, seul les chiffre sont autorisé a ne pas avoir de quote autour, les chaines de caractere doivent en posseder == o (=faux) == "o" (=vrai)
3) utilise count, plutot que num_rows pour compté
A vrai dire je pensse que tu as mi la lettre O plutot que le chiffre 0 non, pour ton elseif?
Une erreur à cette ligne :
} elseif (mysql_num_rows($result) == 'o') {
Correction :
} elseif (mysql_num_rows($result) == 0) {
mysql_num_rows($res) retourne le nombre de ligne affecté par la requette $res par SELECT et DELETE, le resultat est forcement numerique, ou une erreur.
Edit : La correction était déjà proposé, je ne l'avais pas vu
| Citation : 3) utilise count, plutot que num_rows pour compté |
Pourquoi count() plutôt que mysql_num_rows() ? Est-ce pour economiser un passage de fonction ou pour une autre raison ? :intrigué:
salut , merci as tous, pour m`aider
sur ce test MySql.(pour voir si la configuration MySql
repond bien) garder en tete que j`ai installer
easyPHP.
j`ai tester le script a Okin,
Voici le message d`erreur:
Warning: mysql_connect(): Unknown MySQL Server Host 'hostname' (11001) in c:\program files\easyphp1-8\www\test\oxin.php on line 11
Warning: mysql_query(): Accès refusé pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: NON) in c:\program files\easyphp1-8\www\test\oxin.php on line 13
Warning: mysql_query(): A link to the server could not be established in c:\program files\easyphp1-8\www\test\oxin.php on line 13
erreur 1045 : Accès refusé pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: NON)
je vois qu`on se raproche du problem.
c`est mon impression, mais je suis toujour
troubler par ce problem, MySql ne repond pas a ma requete.
merci de votre temp a me repondre.
J`apprecie enormement.
KsaM
salut.
je ne suis pas certain, mais corriger moi si ce que je dit
n`est pas vrai.
mais je croit que dans ce scrypt j`ai une erreur
avec ces lignes.
$host="hostname";
$user="mysqlaccount";
$password="mysqlpassword";
mysql_connect($host,$user,$password);
quand je fais F7 pour easyPHP
je vais dans configuration.
et je vais dans MySql.
mais ou puis je trouver le password et le login.
je sais que hostname est "Localhost"
mais j`aimerai recuperer le password et le login
par defaut. que je pourrai inclure dans le scrypt
ci haut.(dapres moi c`est ca qui me cause les problems d`autentification.
ou je suis completement dans le champ lol!
merci d`avance
KsaM
Quand tu es dan PhpMyadmin, tu entres dans la base Mysql, tu choisis la table user tu fais un :
selec*from "user" (normalement il est présent par défaut, il y a volontairement une faute à selec sinon ça ne passe pas sur le forum)
ensuite executer
et voila tu as tes utilisateurs, autorisations, pass.
par défaut tu as :
Host : "localhost"
User : "root"
password : ""
j'espère que c'est bien ce que tu cherchais.
Il y a 2609 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.
