Mysql_fetch_array
ghafkiha
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
macgawel Messages postés 676 Statut Membre -
macgawel Messages postés 676 Statut Membre -
Bonjour,
je comance d'abord de donner mon code
premier script créer une table
<?php
$liendb = mysql_connect("localhost", "root", "");
mysql_select_db("test");
$sql = "CREATE TABLE eleve (
ideleve int(10) unsigned NOT NULL auto_increment,
nom varchar(64) NOT NUL default '',
prenom varchar(64) NOT NULL default '',
adresse varchar(128) NOT NULL default'',
ville varchar(64) NOT NULL default'',
cp varchar(8) NOT NULL default'',
pays varchar(32) NOT NULL default'france',
sex varchar(8) binary NOT NULL default'',
naissance date NOT NUL default'0000-00-00',
taille int(10) unsigned NOT NULL default '0',
email varchar(64) NOT NULL default'',
telephone varchar(16) NOT NULL default'',
lv varchar(16) NOT NULL default'',
PRIMARY KEY (ideleve),
KEY nom (nom)
)";
mysql_query($sql);
mysql_close($liendb);
echo "table < eleve > créée";
?>
script enregistrer
<?php
$liendb = mysql_connect("localhost", "root", "");
mysql_select_db ("test");
$sql = "INSERT INTO eleve (nom, prenom, adresse, ville,
cp, pays, sexe, naissance, taille, email, telephone, lv)
VALUES ('Dupont', 'paul', '12 rue brancion', 'paris',
'75015', 'france', 'masculin', '1989-04-11' '120',
'pdupont@wanadoo.fr', '0123456', 'anglais')";
mysql_query($sql);
mysql_close($liendb);
echo "eleve < Paul Dupont > enregistré";
?>
script recuperer
<?php
$liendb = mysql_connect("localhost", "root", "");
mysql_select_db ("test");
$sql = "SELECT nom, prenom FROM eleve WHERE ideleve = '1'";
$resultat = mysql_query ($sql);
$eleve = mysql_fetch_array ($resultat);
$nom = $eleve['nom'];
$prenom = $eleve['prenom'];
echo "eleve [1], nom = $nom, prenom = $prenom";
mysql_close($liendb);
?>
je sais plus porquoi j'ai ce message
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\livre\enregistrement dans une base de donnée\créer une table\voir paul depont.php on line 13
eleve [1], nom = , prenom =
marci vc
je comance d'abord de donner mon code
premier script créer une table
<?php
$liendb = mysql_connect("localhost", "root", "");
mysql_select_db("test");
$sql = "CREATE TABLE eleve (
ideleve int(10) unsigned NOT NULL auto_increment,
nom varchar(64) NOT NUL default '',
prenom varchar(64) NOT NULL default '',
adresse varchar(128) NOT NULL default'',
ville varchar(64) NOT NULL default'',
cp varchar(8) NOT NULL default'',
pays varchar(32) NOT NULL default'france',
sex varchar(8) binary NOT NULL default'',
naissance date NOT NUL default'0000-00-00',
taille int(10) unsigned NOT NULL default '0',
email varchar(64) NOT NULL default'',
telephone varchar(16) NOT NULL default'',
lv varchar(16) NOT NULL default'',
PRIMARY KEY (ideleve),
KEY nom (nom)
)";
mysql_query($sql);
mysql_close($liendb);
echo "table < eleve > créée";
?>
script enregistrer
<?php
$liendb = mysql_connect("localhost", "root", "");
mysql_select_db ("test");
$sql = "INSERT INTO eleve (nom, prenom, adresse, ville,
cp, pays, sexe, naissance, taille, email, telephone, lv)
VALUES ('Dupont', 'paul', '12 rue brancion', 'paris',
'75015', 'france', 'masculin', '1989-04-11' '120',
'pdupont@wanadoo.fr', '0123456', 'anglais')";
mysql_query($sql);
mysql_close($liendb);
echo "eleve < Paul Dupont > enregistré";
?>
script recuperer
<?php
$liendb = mysql_connect("localhost", "root", "");
mysql_select_db ("test");
$sql = "SELECT nom, prenom FROM eleve WHERE ideleve = '1'";
$resultat = mysql_query ($sql);
$eleve = mysql_fetch_array ($resultat);
$nom = $eleve['nom'];
$prenom = $eleve['prenom'];
echo "eleve [1], nom = $nom, prenom = $prenom";
mysql_close($liendb);
?>
je sais plus porquoi j'ai ce message
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\livre\enregistrement dans une base de donnée\créer une table\voir paul depont.php on line 13
eleve [1], nom = , prenom =
marci vc
3 réponses
Bonjour.
A priori, il y a une erreur dans ta requête... Essaye ce code, ça devrait te donner plus d'infos...
A priori, il y a une erreur dans ta requête... Essaye ce code, ça devrait te donner plus d'infos...
$liendb = mysql_connect("localhost", "root", "") or die ('Erreur de connexion à MySQL '.mysql_error() );
mysql_select_db ("test") or die ('Erreur de connexion à la base '.mysql_error() );
$sql = "SELECT nom, prenom FROM eleve WHERE ideleve = '1'";
$resultat = mysql_query ($sql) or die ('Erreur de requete '.mysql_error().'<br />Requete : '.$sql );
$eleve = mysql_fetch_array ($resultat);
Tu as accès à ta base (avec phpMyAdmin, par exemple) ?
Si oui, vérifie que la table est bien créée.
Et repasse le script de création en rajoputant bien des OR DIE(mysql_error()); partout où tu as des fonctions mysql_*
Si oui, vérifie que la table est bien créée.
Et repasse le script de création en rajoputant bien des OR DIE(mysql_error()); partout où tu as des fonctions mysql_*
bonjour
merci de me repondre
mon probleme ce que je peux pas verifier si la table de ma base de donnée a été créée par ce que je sais pas utiliser php admin (http://127.0.0.1/mysql/) et je suis que debutant en php
si vous pouvez me donner un coup de main ou si vous pouvez me montrer c comment je dois faire
merci à vous
merci de me repondre
mon probleme ce que je peux pas verifier si la table de ma base de donnée a été créée par ce que je sais pas utiliser php admin (http://127.0.0.1/mysql/) et je suis que debutant en php
si vous pouvez me donner un coup de main ou si vous pouvez me montrer c comment je dois faire
merci à vous
Si tu as installé easyPHP ou un équivalent, tu dois avoir accès à PHPMyAdmin via cette adresse :
http://127.0.0.1/mysql/
Dans le menu (à gauche) tu as accès aux bases de données existantes via la combobox.
Si tu ne trouves pas ta base de données (test), il faudra la créer (toujours faisable par phpMyAdmin)....
Ensuite, passe le script de création de table :
Puis le script enregistrer :
Soit dit en passant, je te conseille de faire une fonction php pour ta connexion, une fois que tes scripts fonctionnent. C'est mieux pour la maintenance (imagine quand tu change le mot de passe, le nombre d'endroits où il faut le modifier...)
http://127.0.0.1/mysql/
Dans le menu (à gauche) tu as accès aux bases de données existantes via la combobox.
Si tu ne trouves pas ta base de données (test), il faudra la créer (toujours faisable par phpMyAdmin)....
Ensuite, passe le script de création de table :
<?php
$liendb = mysql_connect("localhost", "root", "") or die ("Erreur de connexion MySQL ".mysql_error());
mysql_select_db("test") or die ("Erreur de connexion à la base ".mysql_error());
$sql = "CREATE TABLE eleve (
ideleve int(10) unsigned NOT NULL auto_increment,
nom varchar(64) NOT NUL default '',
prenom varchar(64) NOT NULL default '',
adresse varchar(128) NOT NULL default'',
ville varchar(64) NOT NULL default'',
cp varchar(8) NOT NULL default'',
pays varchar(32) NOT NULL default'france',
sex varchar(8) binary NOT NULL default'',
naissance date NOT NUL default'0000-00-00',
taille int(10) unsigned NOT NULL default '0',
email varchar(64) NOT NULL default'',
telephone varchar(16) NOT NULL default'',
lv varchar(16) NOT NULL default'',
PRIMARY KEY (ideleve),
KEY nom (nom)
)";
mysql_query($sql) or die ("Erreur de requête ".mysql_error());
mysql_close($liendb);
echo "table < eleve > créée";
?>
Puis le script enregistrer :
<?php
http://127.0.0.1/mysql/
Dans le menu (à gauche) tu as accès aux bases de données existantes via la combobox.
Si tu ne trouves pas ta base de données (test), il faudra la créer (toujours faisable par phpMyAdmin)....
Ensuite, passe le script de création de table :
<code><?php
$liendb = mysql_connect("localhost", "root", "") or die ("Erreur de connexion MySQL ".mysql_error());
mysql_select_db("test") or die ("Erreur de connexion à la base ".mysql_error());
$sql = "INSERT INTO eleve (nom, prenom, adresse, ville,
cp, pays, sexe, naissance, taille, email, telephone, lv)
VALUES ('Dupont', 'paul', '12 rue brancion', 'paris',
'75015', 'france', 'masculin', '1989-04-11' '120',
'pdupont@wanadoo.fr', '0123456', 'anglais')";
mysql_query($sql) or die ("erreur de requête ".mysql_error());
mysql_close($liendb);
echo "eleve < Paul Dupont > enregistré";
?>
Soit dit en passant, je te conseille de faire une fonction php pour ta connexion, une fois que tes scripts fonctionnent. C'est mieux pour la maintenance (imagine quand tu change le mot de passe, le nombre d'endroits où il faut le modifier...)
il m'a afficher cette erreur
Erreur de requete La table 'test.eleve' n'existe pas
Requete : SELECT nom, prenom FROM eleve WHERE ideleve = '1'
merci bc