Problème de récupération de données sous forme de tableau avec : mysql_fetch_arr

rem78 230 Messages postés vendredi 23 avril 2004Date d'inscription 5 avril 2015 Dernière intervention - 24 août 2004 à 21:50 - Dernière réponse : cs_GRenard 1663 Messages postés lundi 16 septembre 2002Date d'inscription 30 juillet 2008 Dernière intervention
- 26 août 2004 à 15:46
Bonjours,
J'ai un problème de récupération de données depuis ma table
sous forme de tableau avec l'instruction, mysql_fetch_array
J'ai fais le script suivant ( récupération depuis ma table de 3 type de données qui sont : nomfr ; emailfr ; messagefr )

56 <?php
57 //je me connecte au serveur
58 $db= mysql_connect("localhost","root","");
59 if ($db)
60 //je teste si la connection fonctionne
61 {
62 $sel=mysql_select_db("test");
63 if ($sel)
64 {
65 //ici je peux faire des requêtes
66 }
67 //le serveur ne trouve pas ma base de données
68 else echo mysql_error();
69 }
70 //le serveur n'accepte pas ma connexion pourquoi ?
71 else echo mysql_error();
72 $result=mysql_query("SELECT * FROM messagesfr_tbl");//On recherche toutes les infos. de la table
73 while($row=mysql_fetch_array($result));{ //On met les infos. dans un array
74 echo " Nom= " . $row["nomfr"] ."
";
75 echo "Adresse E-mail = " . $row["emailfr"] ."
"; //On retranscrit les infos.
76 echo "Réponse à la question= " . $row["question"] . "
";
77 echo " Méssages FR= " . $row["messagefr"] . "
";
78 echo "<hr>";
79 }
80 ?>

Mais j'ai l'erreure suivante :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-7\www\liftski\livre_fr\lire_livre_d_or.php on line 73
Nom =
Adresse E-mail=
Réponse à la question=
Méssages FR=

Je ne vois pas !!!!
Merci de votre aide
rem78
Afficher la suite 

22 réponses

Répondre au sujet
cs_GRenard 1663 Messages postés lundi 16 septembre 2002Date d'inscription 30 juillet 2008 Dernière intervention - 24 août 2004 à 23:48
0
Utile
Tu n'est tout simplement pas connecté (je pense)
Ta requête se trouve APRES ton if($db)... donc que tu sois connecté ou pas ca execute quand même ton query !

PHP Guru
Écoutez les conseils d'un vieux sage ! Ils sont souvent très utiles.
http://www.lookstrike.com
Commenter la réponse de cs_GRenard
Gille59 23 Messages postés mercredi 7 juillet 2004Date d'inscription 7 octobre 2012 Dernière intervention - 25 août 2004 à 09:14
0
Utile
Bonjour :)

Essaye ça pour la réception car d'après moi ça vient de la.

print ' - Nom '.$resultat[nom].'';

Gille59 Le gars du Nord
Commenter la réponse de Gille59
rem78 230 Messages postés vendredi 23 avril 2004Date d'inscription 5 avril 2015 Dernière intervention - 25 août 2004 à 13:33
0
Utile
Merci pour vos réponses !!

Etant Débutant dans la programmation, je n'arrive pas à courriger mon problème, pouvez vous me donner plus d'explications ou un exemple pour que je puisse corriger cela.

en tout cas merci de votre aide !!

rem78
Commenter la réponse de rem78
cs_GRenard 1663 Messages postés lundi 16 septembre 2002Date d'inscription 30 juillet 2008 Dernière intervention - 25 août 2004 à 16:07
0
Utile
Tu dois mettre ton mysql_query dans ton if de if($db)

PHP Guru
Écoutez les conseils d'un vieux sage ! Ils sont souvent très utiles.
http://www.lookstrike.com
Commenter la réponse de cs_GRenard
blinkseb 57 Messages postés mercredi 25 août 2004Date d'inscription 18 avril 2005 Dernière intervention - 25 août 2004 à 18:10
0
Utile
Ca marchera mieux comme ça (résumé des posts précédents)


<?php
 //je me connecte au serveur

 $db= mysql_connect("localhost","root","");

 if ($db)
 //je teste si la connection fonctionne
 {

 $sel=mysql_select_db("test");

 if ($sel)
 {

 //ici je peux faire des requêtes
$result=mysql_query("SELECT * FROM messagesfr_tbl"); //On recherche toutes les infos. de la table

 while($row=mysql_fetch_array($result));{ //On met les infos. dans un array

 echo " Nom=  " . $row["nomfr"] ." 
 ";
 echo "Adresse E-mail = " . $row["emailfr"] ." 
 "; //On retranscrit les infos.
 echo "Réponse à la question= " . $row["question"] . "
";
 echo "Méssages FR= " . $row["messagefr"] . "
";
 echo "<hr>";

 }

 }

 //le serveur ne trouve pas ma base de données

 else echo mysql_error();

 }

 //le serveur n'accepte pas ma connexion pourquoi ?

 else echo mysql_error();

 ?> 



Tu l'a écrit toi même en commentaire "ici je peux faire des requêtes". C'est bête de pas faire ce qu'on écrit ;)

bLiNkSeB - Anciennement sebastienbro
Commenter la réponse de blinkseb
rem78 230 Messages postés vendredi 23 avril 2004Date d'inscription 5 avril 2015 Dernière intervention - 25 août 2004 à 20:39
0
Utile
merci blinkseb, mais avec ton script j'obtiens ce message d'erreure :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-7\www\liftski\livre_fr\lire_livre_d_or.php on line 73
Nom=
Adresse E-mail=
Réponse à la question=
Méssages FR=

mon script ligne 73

73 while($row=mysql_fetch_array($result));{ //On met les infos. dans un array
Commenter la réponse de rem78
cs_GRenard 1663 Messages postés lundi 16 septembre 2002Date d'inscription 30 juillet 2008 Dernière intervention - 25 août 2004 à 21:01
0
Utile
Avant de faire un mysql_fetch_array()
essais de faire ton mysql_error tu vas voir si ya une erreur et c'est laquelle ?!

PHP Guru
Écoutez les conseils d'un vieux sage ! Ils sont souvent très utiles.
http://www.lookstrike.com
Commenter la réponse de cs_GRenard
blinkseb 57 Messages postés mercredi 25 août 2004Date d'inscription 18 avril 2005 Dernière intervention - 25 août 2004 à 21:18
0
Utile
GRenard à raison, à ce niveau, c'est un problème avec ta requête SQL. Probablement que la table "messagesfr_tbl" n'existe pas. Fait donc un


$result=mysql_query("SELECT * FROM messagesfr_tbl") or
die("Erreur : " . mysql_error());



bLiNkSeB - Anciennement sebastienbro
Commenter la réponse de blinkseb
rem78 230 Messages postés vendredi 23 avril 2004Date d'inscription 5 avril 2015 Dernière intervention - 25 août 2004 à 22:26
0
Utile
la ça m'échappe !!!
visiblement je ne peut communiquer avec ma base !!
J'ai le message suivant :
0: 1146: Table 'liftski_db.liftski_db' doesn't exist

hors ma table fonctionne bien puisque j'arrive à écrir dedans, alors pourquoi je n'arrive pas à pouvoir aller chercher les infos dans c'est champs ?
Mon script :
<?php
//je me connecte au serveur
$db=mysql_connect("localhost","root","");

mysql_select_db("liftski_db");
echo mysql_errno() . ": " . mysql_error(). "\n";

mysql_select_db("liftski_db");
mysql_query("SELECT * FROM liftski_db");
echo mysql_errno() . ": " . mysql_error() . "\n";
?>
Commenter la réponse de rem78
blinkseb 57 Messages postés mercredi 25 août 2004Date d'inscription 18 avril 2005 Dernière intervention - 25 août 2004 à 23:04
0
Utile
Ta base s'apelle "liftski_db", et ta table "messagesfr_tbl"

Donc mysql_select_db("liftski_db");
et "SELECT * FROM messagesfr_tbl";

bLiNkSeB - Anciennement sebastienbro
Commenter la réponse de blinkseb
rem78 230 Messages postés vendredi 23 avril 2004Date d'inscription 5 avril 2015 Dernière intervention - 26 août 2004 à 13:26
0
Utile
J'ai mon script que j'ai modifé :

1 <?php
2 //je me connecte au serveur
3 $db= mysql_connect("localhost","root","")or
4 die("Impossible de se connecter : " . mysql_error());
5 mysql_select_db("liftski_db");
6 //je teste si la connection fonctionne
7 $sel=mysql_select_db("liftski_db");
8 if ($sel)
9 //Configuration de la requêtes
10 $query = "select * FROM liftski_db" or
11 die("Impossible de selectionner la base de donnée 'liftski_db': ".msql_error()); //message d'erreur de connexion à la base
12 //On recherche toutes les infos. de la table
13 $result = mysql_query("SELECT * FROM 'messagesfr_tbl'", $db);
14 if (!$result) {
15 die("impossible de selectionner la table 'messagesfr_tbl' : ".msql_error());
16 }
17 //envoie une requête à la base de données
18 while ($row = msql_fetch_array($result)) {
19 echo $row["nomfr"];
20 echo $row["emailfr"];
21 echo $row["mesagefr"];
22 }
23
24 //On met les infos. dans un array
25 //while($row=mysql_fetch_array($result)){
26 //print ' - Nom '.$resultat["nomfr"].'';
27 {
28 echo " Nom = " . $row["nomfr"] ."
";
29 echo "Adresse E-mail = " . $row["emailfr"] ."
"; //On retranscrit les infos.
30 echo "Méssages FR = " . $row["messagefr"] . "
";
31 echo "Réponse à la question = " . $row["question"] . "
";
32 echo "<hr>";
33 }
34 ?>

J'ai plusieurs erreures qui sont :

Fatal error: Call to undefined function: msql_error() in c:\program files\easyphp1-7\www\liftski\livre_fr\lire_livre_d_or.php on line 15

Pourquoi je ne peut pas avoir un message d'erreure, si je n'arrive pas à me connecter à ma table ??

Fatal error: Call to undefined function: msql_fetch_array() in c:\program files\easyphp1-7\www\liftski\livre_fr\lire_livre_d_or.php on line 18

pourquoi je n'arrive pas à pouvoir envoyer une requete à ma base de données ???

Merci de votre aide !!
rem78
Commenter la réponse de rem78
rem78 230 Messages postés vendredi 23 avril 2004Date d'inscription 5 avril 2015 Dernière intervention - 26 août 2004 à 13:36
0
Utile
Bon je viens de corriger la 1ere erreure, mais j'ai toujours l'erreure d'envoi de requete à ma base !!!

Fatal error: Call to undefined function: msql_fetch_array() in c:\program files\easyphp1-7\www\liftski\livre_fr\lire_livre_d_or.php on line 18

j'vois pas pourquoi !!
Commenter la réponse de rem78
blinkseb 57 Messages postés mercredi 25 août 2004Date d'inscription 18 avril 2005 Dernière intervention - 26 août 2004 à 13:38
0
Utile
c'est mysql_fetch_array() relis toi un peu avant de poster

bLiNkSeB - Anciennement sebastienbro
Commenter la réponse de blinkseb
rem78 230 Messages postés vendredi 23 avril 2004Date d'inscription 5 avril 2015 Dernière intervention - 26 août 2004 à 13:40
0
Utile
J'ai mon script que j'ai modifé :

1 <?php
2 //je me connecte au serveur
3 $db= mysql_connect("localhost","root","")or
4 die("Impossible de se connecter : " . mysql_error());
5 mysql_select_db("liftski_db");
6 //je teste si la connection fonctionne
7 $sel=mysql_select_db("liftski_db");
8 if ($sel)
9 //Configuration de la requêtes
10 $query = "select * FROM messagesfr_tbl" or
11 die("Impossible de selectionner la base de donnée 'liftski_db': ".msql_error()); //message d'erreur de connexion à la base
12 //On recherche toutes les infos. de la table
13 $result = mysql_query("SELECT * FROM messagesfr_tbl", $db);
14 if (!$result) {
15 die("impossible de selectionner la table 'messagesfr_tbl' : ".msql_error());
16 }
17 //envoie une requête à la base de données
18 while ($row = msql_fetch_array($result)) {
19 echo $row["nomfr"];
20 echo $row["emailfr"];
21 echo $row["mesagefr"];
22 }
23
24 //On met les infos. dans un array
25 //while($row=mysql_fetch_array($result)){
26 //print ' - Nom '.$resultat["nomfr"].'';
27 {
28 echo " Nom = " . $row["nomfr"] ."
";
29 echo "Adresse E-mail = " . $row["emailfr"] ."
"; //On retranscrit les infos.
30 echo "Méssages FR = " . $row["messagefr"] . "
";
31 echo "Réponse à la question = " . $row["question"] . "
";
32 echo "<hr>";
33 }
34 ?>

j'ai toujours l'erreure d'envoi de requete à ma base !!!

merci de votre aide
rem78
Commenter la réponse de rem78
blinkseb 57 Messages postés mercredi 25 août 2004Date d'inscription 18 avril 2005 Dernière intervention - 26 août 2004 à 13:42
0
Utile
Hm, restons calme...

Comem dit plus haut c'est mysql_fetch_array(). A la ligne 18 tu à écrit n'importe quoi.

Ligne 11 idem, c'esy mysql_error().

Relis toi un peu, les fonction mysql comment par mysql_

bLiNkSeB - Anciennement sebastienbro
Commenter la réponse de blinkseb
rem78 230 Messages postés vendredi 23 avril 2004Date d'inscription 5 avril 2015 Dernière intervention - 26 août 2004 à 13:47
0
Utile
Oups...j'avais pas vue !!!
merci blinkseb ça marche nikel !!!
Commenter la réponse de rem78
rem78 230 Messages postés vendredi 23 avril 2004Date d'inscription 5 avril 2015 Dernière intervention - 26 août 2004 à 13:54
0
Utile
j'ai une erreure :
Notice: Undefined index: mesagefr in c:\program files\easyphp1-7\www\liftski\livre_fr\lire_livre_d_or.php on line 21

J'ai mon script que j'ai modifé :

1 <?php
2 //je me connecte au serveur
3 $db= mysql_connect("localhost","root","")or
4 die("Impossible de se connecter : " . mysql_error());
5 mysql_select_db("liftski_db");
6 //je teste si la connection fonctionne
7 $sel=mysql_select_db("liftski_db");
8 if ($sel)
9 //Configuration de la requêtes
10 $query = "select * FROM messagesfr_tbl" or
11 die("Impossible de selectionner la base de donnée 'liftski_db': ".msql_error()); //message d'erreur de connexion à la base
12 //On recherche toutes les infos. de la table
13 $result = mysql_query("SELECT * FROM messagesfr_tbl", $db);
14 if (!$result) {
15 die("impossible de selectionner la table 'messagesfr_tbl' : ".msql_error());
16 }
17 //envoie une requête à la base de données
18 while ($row = msql_fetch_array($result)) {
19 echo $row["nomfr"];
20 echo $row["emailfr"];
21 echo $row["mesagefr"];
22 }
23
24 //On met les infos. dans un array
25 //while($row=mysql_fetch_array($result)){
26 //print ' - Nom '.$resultat["nomfr"].'';
27 {
28 echo " Nom = " . $row["nomfr"] ."
";
29 echo "Adresse E-mail = " . $row["emailfr"] ."
"; //On retranscrit les infos.
30 echo "Méssages FR = " . $row["messagefr"] . "
";
31 echo "Réponse à la question = " . $row["question"] . "
";
32 echo "<hr>";
33 }
34 ?>
Commenter la réponse de rem78
blinkseb 57 Messages postés mercredi 25 août 2004Date d'inscription 18 avril 2005 Dernière intervention - 26 août 2004 à 14:09
0
Utile
C'est tout simplement que le champ 'messagefr" n'existe pas. Vérifie qu'il est existe réellement.

bLiNkSeB - Anciennement sebastienbro
Commenter la réponse de blinkseb
rem78 230 Messages postés vendredi 23 avril 2004Date d'inscription 5 avril 2015 Dernière intervention - 26 août 2004 à 14:10
0
Utile
j'ai juste un truc bizar qui apparait sur ma page message,
c'est le mot "original" devans le Nom comme ceux-ci :
originalNom Adresse E-mail Méssages Réponse à la question

--------------------------------------------------------------------------------



Livre d'Or



Les messages :
Commenter la réponse de rem78
blinkseb 57 Messages postés mercredi 25 août 2004Date d'inscription 18 avril 2005 Dernière intervention - 26 août 2004 à 14:19
0
Utile
Je voudrais pas paraitre méchant, mais ton script, c'est vraiment le bordel...

Tu fais un echo dans la while, ensuite tu refait un echo plus bas des même choses, mais cette fois avec le texte "décoratif", mais sans while.

Un conseil, réécrit tout depuis le début, tu n'a pas grand chose, en prenant bien garde à écrire correctement le nom des fonctions, ainsi qu'a te connecter à la bonne base de données.

bLiNkSeB - Anciennement sebastienbro
Commenter la réponse de blinkseb

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Problème de récupération de données sous forme de tableau avec : mysql_fetch_arr - page 2