Problème PHP - test de My SQL

Résolu
ejay03 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour,

je me lance dans l'apprentissage de MySQL et PHP, j'ai acheter un livre... j'ai suivi de prêt leur exemple, j'ai chercher mon erreur, regarder sur le net ce qui se faisait... bref je ne comprend toujours pas mon erreur. Je sollicite votre aide. Toutes suggestions sont les bienvenues. Merci d'avance.

<?php
/* Progamme: mysql_up.php
* desc: Se connecte au serveur MySQL et
* affiche les paramètres.
*/
echo "<html>
<head><title>Test de MySQL5 avec PHP5</title></head>
<body>";
$host="localhost";
$user="";
$password="";

$cxn=mysqli_connect($host,$user,$password);
$sql="SHOW STATUS";
$result=mysql_query($cxn,$sql);
if($result == false)
{
echo "<h4>Erreur: ".mysql_error($cxn). "</h4>;
}
else
{
/* Tableau affichant les résultats */
echo "<table border='l'>
<tr><th>Nom_Variable</th>
th>Valeur</th></tr>";

for($i = 0; $i < mysqli_num_row($result); $i++)
{
echo "<tr>";
$row_array = mysqli_fetch_row($result);
for($j = 0;$j < mysqli_num_fields($result);$j++)
{
echo "<td>".$row_array[$j]."</td>\n";
}
}
echo "</table>";
}
?>
</body>
</html>


-->Parse error: parse error, expecting `','' or `';'' in C:\Program Files\EasyPHP 3.0\www\test-mysql.php on line 23
A voir également:

20 réponses

Utilisateur anonyme
 
Bonsoir, essaie ceci :
<html>
<head><title>Test de MySQL5 avec PHP5</title></head>
<body>
<?php
$host="localhost";
$user="";
$password="";

$cxn=mysqli_connect($host,$user,$password);
$sql="SHOW STATUS";
$result=mysql_query($cxn,$sql);
if($result == false)
{
	echo "<h4>Erreur: ".mysql_error($cxn). "</h4>";
}
else
{
	/* Tableau affichant les résultats */
	echo "<table border='l'>
	<tr><th>Nom_Variable</th>
	th>Valeur</th></tr>";
	for($i = 0; $i < mysqli_num_row($result); $i++)
	{
		echo "<tr>";
		$row_array = mysqli_fetch_row($result);
		for($j = 0;$j < mysqli_num_fields($result);$j++)
		{
			echo "<td>".$row_array[$j]."</td>\n";
		}
	}
	echo "</table>";
}
?>
</body>
</html> 
0
Ricky38 Messages postés 4349 Date d'inscription   Statut Contributeur Dernière intervention   1 462
 
il manque un < au début de th>Valeur</th></tr>";

;)
0
Utilisateur anonyme
 
+1, j'ai pas corrigé les fautes de balises ^^
0
ejay03 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention  
 
tu as vu d'autres fautes ? ^^
0
ejay03 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention  
 
Merci à vous de l'attention que vous portez à ma question, l'erreur est toujours la même après vérification.

j'ai bien écris:

echo "<table border='l'>
<tr><th>Nom_Variable</th>
<th>Valeur</th></tr>";

donc problème non résolu et msg d'erreur identique.
0
Ricky38 Messages postés 4349 Date d'inscription   Statut Contributeur Dernière intervention   1 462
 
premièrement tu écris
echo "<table border='l'>

alors que tu devrais écrire
echo "<table border='1'>
avec un 1 et non un I

Aussi
<tr><th>Nom_Variable</th>
<th>Valeur</th></tr>"; 


normalement une variable prends un $ si elle est définie biensur

<tr><th>$Nom_Variable</th>
<th>$Valeur</th></tr>"; 
0
Utilisateur anonyme
 
C'est un 1 et pas un l :
echo "<table border='1'>
<tr><th>Nom_Variable</th>
<th>Valeur</th></tr>";
0
ejay03 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention  
 
<?php
/* Progamme: mysql_up.php
* desc: Se connecte au serveur MySQL et
* affiche les paramètres.
*/
echo "<html>
<head><title>Test de MySQL5 avec PHP5</title></head>
<body>";
$host="localhost";
$user="";
$password="";

$cxn=mysqli_connect($host,$user,$password);
$sql="SHOW STATUS";
$result=mysql_query($cxn,$sql);
if($result == false)
{
echo "<h4>Erreur: ".mysql_error($cxn). "</h4>;
}
else
{
/* Tableau affichant les résultats */
echo "<table border='1'>
<tr><th>Nom_Variable</th>
<th>Valeur</th></tr>";

for($i = 0; $i < mysqli_num_row($result); $i++)
{
echo "<tr>";
$row_array = mysqli_fetch_row($result);
for($j = 0;$j < mysqli_num_fields($result);$j++)
{
echo "<td>".$row_array[$j]."</td>\n";
}
}
echo "</table>";
}
?>
</body>
</html>


----> j'ai pris en considération vos remarques mais toujours le même problème ^^
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
 
J'ai l'impression qu'il manque un </tr>. Correction vite fait :
for($i = 0; $i < mysqli_num_row($result); $i++)
	{
		echo "<tr>";
		$row_array = mysqli_fetch_row($result);
		for($j = 0;$j < mysqli_num_fields($result);$j++)
		{
			echo "<td>".$row_array[$j]."</td>\n";
		}
                echo "</tr>";
	}
	echo "</table>";
0
Utilisateur anonyme
 
Non, tu n'as pas tout corrigé ^^ :
echo "<h4>Erreur: ".mysql_error($cxn). "</h4>";
0
ejay03 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention  
 
<?php
/* Progamme: mysql_up.php
* desc: Se connecte au serveur MySQL et
* affiche les paramètres.
*/
echo "<html>
<head><title>Test de MySQL5 avec PHP5</title></head>
<body>";
$host="localhost";
$user="";
$password="";

$cxn=mysqli_connect($host,$user,$password);
$sql="SHOW STATUS";
$result=mysql_query($cxn,$sql);
if($result == false)
{
echo "<h4>Erreur: ".mysql_error($cxn). "</h4>;
}
else
{
/* Tableau affichant les résultats */
echo "<table border='1'>
<tr><th>Nom_Variable</th>
<th>Valeur</th></tr>";
for($i = 0; $i < mysqli_num_row($result); $i++)
{
echo "<tr>";
$row_array = mysqli_fetch_row($result);
for($j = 0;$j < mysqli_num_fields($result);$j++)
{
echo "<td>".$row_array[$j]."</td>\n";
}
echo "</tr>";
}
echo "</table>";
}
?>
</body>
</html>

Oui, et là ... tjs le même msg d'erreur ^^
en gras dans le programme les dernières modifications
0
Utilisateur anonyme
 
Tu as bien vu mon message juste avant le tien ? ^^
0
ejay03 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention  
 
programme:

<?php
/* Progamme: mysql_up.php
* desc: Se connecte au serveur MySQL et
* affiche les paramètres.
*/
echo "<html>
<head><title>Test de MySQL5 avec PHP5</title></head>
<body>";
$host="localhost";
$user="";
$password="";

$cxn=mysqli_connect($host,$user,$password);
$sql="SHOW STATUS";
$result=mysql_query($cxn,$sql);
if($result == false)
{
echo "<h4>Erreur: ".mysql_error($cxn). "</h4>";
}
else
{
/* Tableau affichant les résultats */
echo "<table border='1'>
<tr><th>Nom_Variable</th>
<th>Valeur</th></tr>";
for($i = 0; $i < mysqli_num_row($result); $i++)
{
echo "<tr>";
$row_array = mysqli_fetch_row($result);
for($j = 0;$j < mysqli_num_fields($result);$j++)
{
echo "<td>".$row_array[$j]."</td>\n";
}
echo "</tr>";
}
echo "</table>";
}
?>
</body>
</html>


Warning: mysqli_connect() [function.mysqli-connect]: (28000/1045): Accès refusé pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: NON) in C:\Program Files\EasyPHP 3.0\www\test-mysql111.php on line 13

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\Program Files\EasyPHP 3.0\www\test-mysql111.php on line 15

Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in C:\Program Files\EasyPHP 3.0\www\test-mysql111.php on line 18

Erreur:
0
Utilisateur anonyme
 
Maintenant tes erreurs proviennent de la connexion à ta base de données, de ta requête.
$user="root", c'est peut être mieux.
0
ejay03 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention  
 
<?php
/* Progamme: mysql_up.php
* desc: Se connecte au serveur MySQL et
* affiche les paramètres.
*/
echo "<html>
<head><title>Test de MySQL5 avec PHP5</title></head>
<body>";
$host="localhost";
$user="root";
$password="";

$cxn=mysqli_connect($host,$user,$password);
$sql="SHOW STATUS";
$result=mysql_query($cxn,$sql);
if($result == false)
{
echo "<h4>Erreur: ".mysql_error($cxn). "</h4>";
}
else
{
/* Tableau affichant les résultats */
echo "<table border='1'>
<tr><th>Nom_Variable</th>
<th>Valeur</th></tr>";
for($i = 0; $i < mysqli_num_row($result); $i++)
{
echo "<tr>";
$row_array = mysqli_fetch_row($result);
for($j = 0;$j < mysqli_num_fields($result);$j++)
{
echo "<td>".$row_array[$j]."</td>\n";
}
echo "</tr>";
}
echo "</table>";
}
?>
</body>
</html>

--->
Warning: mysqli_connect() [function.mysqli-connect]: (28000/1045): Accès refusé pour l'utilisateur: 'root'@'@localhost' (mot de passe: NON) in C:\Program Files\EasyPHP 3.0\www\test-mysql111.php on line 13

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\Program Files\EasyPHP 3.0\www\test-mysql111.php on line 15

Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in C:\Program Files\EasyPHP 3.0\www\test-mysql111.php on line 18

Erreur:
0
Utilisateur anonyme
 
C'est Mysqlite que tu utilises, donc je ne sais pas comment ça fonctionne la connexion. ^^
0
Utilisateur anonyme
 
J'ai testé avec MySQL (j'ai changé pour mettre en MySQLite après)
<?php
/* Progamme: mysql_up.php
* desc: Se connecte au serveur MySQL et
* affiche les paramètres.
*/
echo "<html>
<head><title>Test de MySQL5 avec PHP5</title></head>
<body>";
$host="localhost";
$user="root"; // A voir
$password="";
$database=""; // Base de données

$cxn=mysqli_connect($host,$user,$password) or die(mysql_error());
$result=mysqli_query("SHOW TABLE STATUS FROM $database") or die(mysql_error()); // Requête que tu veux faire ?
if($result == false)
{
echo "<h4>Erreur: ".mysql_error($cnx). "</h4>";
}
else
{
/* Tableau affichant les résultats */
echo "<table border='1'>
<tr><th>$Nom_Variable</th>
<th>Valeur</th></tr>";
for($i = 0; $i < mysqli_num_rows($result); $i++)
{
echo "<tr>";
$row_array = mysqli_fetch_row($result);
for($j = 0;$j < mysqli_num_fields($result);$j++)
{
echo "<td>".$row_array[$j]."</td>\n";
}
echo "</tr>";
}
echo "</table>";
}
?>
</body>
</html> 
0
ejay03 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention  
 
---> le programme a l'air de fonctionner, plus de beug ligne 13 15 18


---> Warning: mysqli_connect() [function.mysqli-connect]: (28000/1045): Accès refusé pour l'utilisateur: 'root'@'@localhost' (mot de passe: NON) in C:\Program Files\EasyPHP 3.0\www\test mySQL 222.php on line 14

Faut que je configure les droits:

[img]http://images.imagehotel.net/cu15pauz9o.jpg[/img]

il me semble l'avoir fait :S par contre j'ai pas encore créer de base de donnée pour le moment mais je pense pas que ça soit la source du problème
0
Utilisateur anonyme
 
As-tu regardé ici -> http://www.manuelphp.com/php/function.mysqli-connect.php
ça pourra sans doute t'aider.
0
ejay03 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention  
 
<?php
/* Progamme: mysql_up.php
* desc: Se connecte au serveur MySQL et
* affiche les paramètres.
*/
echo "<html>
<head><title>Test de MySQL5 avec PHP5</title></head>
<body>";
$host="localhost";
$user="root"; // A voir
$password="";
$database=""; // Base de données

$cxn=mysqli_connect($host,$user,$password) or die(mysql_error());
$result=mysqli_query("SHOW TABLE STATUS FROM $database") or die(mysql_error()); // Requête que tu veux faire ?
if($result == false)
{
echo "<h4>Erreur: ".mysql_error($cnx). "</h4>";
}
else
{
/* Tableau affichant les résultats */
echo "<table border='1'>
<tr><th>$Nom_Variable</th>
<th>Valeur</th></tr>";
for($i = 0; $i < mysqli_num_rows($result); $i++)
{
echo "<tr>";
$row_array = mysqli_fetch_row($result);
for($j = 0;$j < mysqli_num_fields($result);$j++)
{
echo "<td>".$row_array[$j]."</td>\n";
}
echo "</tr>";
}
echo "</table>";
}
?>
</body>
</html>


----->Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\Program Files\EasyPHP 3.0\www\test mySQL 222.php on line 15
0
Utilisateur anonyme
 
Fait ceci :
$cxn=mysqli_connect($host,$user,$password) or die(mysqli_error()); 

et plus loin
$result = mysqli_query($cxn, "SHOW TABLE STATUS FROM $database") or die(mysqli_error());


J'ai changé aussi mysql_error() par mysqli_error().
mysqli_query doit avoir 2 paramètres en fait (voir manuel php).
0
ejay03 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention  
 
-----> Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\Program Files\EasyPHP 3.0\www\test mySQL 222.php on line 15

Warning: mysqli_error() expects exactly 1 parameter, 0 given in C:\Program Files\EasyPHP 3.0\www\test mySQL 222.php on line 15


<?php
/* Progamme: mysql_up.php
* desc: Se connecte au serveur MySQL et
* affiche les paramètres.
*/
echo "<html>
<head><title>Test de MySQL5 avec PHP5</title></head>
<body>";
$host="localhost";
$user="root"; // A voir
$password="";
$database=""; // Base de données

$cxn=mysqli_connect($host,$user,$password) or die(mysqli_error());
$result=mysqli_query("SHOW TABLE STATUS FROM $database") or die(mysqli_error()); // Requête que tu veux faire ?
if($result == false)
{
echo "<h4>Erreur: ".mysql_error($cnx). "</h4>";
}
else
{
/* Tableau affichant les résultats */
echo "<table border='1'>
<tr><th>$Nom_Variable</th>
<th>Valeur</th></tr>";
for($i = 0; $i < mysqli_num_rows($result); $i++)
{
echo "<tr>";
$row_array = mysqli_fetch_row($result);
for($j = 0;$j < mysqli_num_fields($result);$j++)
{
echo "<td>".$row_array[$j]."</td>\n";
}
echo "</tr>";
}
echo "</table>";
}
?>
</body>
</html>
0
jeremieca Messages postés 178 Date d'inscription   Statut Membre Dernière intervention   28
 
Essaie de tout mettre sur la même ligne au cas ou :

echo "<table border='l'><tr><th>Nom_Variable</th>th>Valeur</th></tr>";
0
Utilisateur anonyme
 
Alors sur certains sites, je ne vois pas toujours la même chose, j'ai trouvé ça :
$cxn=mysqli_connect($host,$user,$password,$database) or die(mysqli_error($cxn)); 

Sinon, tu remplaces tout tes :
die(mysqli_error())
par
die(mysqli_error($cxn))


Pour essayer de t'aider, j'ai regardé sur http://www.manuelphp.com/php/manuel.php
0