Equivalemnt Mysqli de mysql_fetch_array
Résolu/Fermé
maxireussite
Messages postés
372
Date d'inscription
jeudi 10 mai 2007
Statut
Membre
Dernière intervention
11 mars 2020
-
Modifié par maxireussite le 26/09/2016 à 06:21
maxireussite Messages postés 372 Date d'inscription jeudi 10 mai 2007 Statut Membre Dernière intervention 11 mars 2020 - 26 sept. 2016 à 18:28
maxireussite Messages postés 372 Date d'inscription jeudi 10 mai 2007 Statut Membre Dernière intervention 11 mars 2020 - 26 sept. 2016 à 18:28
A voir également:
- Mysql_fetch_array mysqli
- Mysqli::real_connect(): (hy000/2002): aucune connexion n’a pu être établie car l’ordinateur cible l’a expressément refusée ✓ - Forum Webmastering
- Mysql_fetch_array() expects parameter 1 - Forum Webmastering
- Mysqli::real_connect(): (hy000/1045): access denied for user 'root'@'localhost' (using password: no) - Forum MySQL
- Mysqli debian ✓ - Forum Debian
- Mysqli free ✓ - Forum MySQL
9 réponses
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 717
26 sept. 2016 à 09:13
26 sept. 2016 à 09:13
Bonjour
Tu as fais la connexion à ta bdd de quelle manière ? (Façon objet ou procedurale)?
Tu as fais la connexion à ta bdd de quelle manière ? (Façon objet ou procedurale)?
maxireussite
Messages postés
372
Date d'inscription
jeudi 10 mai 2007
Statut
Membre
Dernière intervention
11 mars 2020
5
Modifié par maxireussite le 26/09/2016 à 13:46
Modifié par maxireussite le 26/09/2016 à 13:46
Bonjour,
Euh ! procédurale je crois :
Euh ! procédurale je crois :
if($conn = mysqli_connect('localhost', '******', '', '******')) { } else { echo 'Erreur !'; }
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 717
26 sept. 2016 à 14:46
26 sept. 2016 à 14:46
Donc que vient faire la ligne :
Ensuite, pour les différentes instructions (telle que le fetch_array..) il suffit de regarder le manuel php :
https://www.php.net/manual/fr/mysqli-result.fetch-array.php
Regarder la section : Exemple #2 Style procédural
$res2 = $conn->query($sql2);?
Ensuite, pour les différentes instructions (telle que le fetch_array..) il suffit de regarder le manuel php :
https://www.php.net/manual/fr/mysqli-result.fetch-array.php
Regarder la section : Exemple #2 Style procédural
maxireussite
Messages postés
372
Date d'inscription
jeudi 10 mai 2007
Statut
Membre
Dernière intervention
11 mars 2020
5
Modifié par maxireussite le 26/09/2016 à 15:18
Modifié par maxireussite le 26/09/2016 à 15:18
Je te remercie, Jordane45,
figure toi que c en désespoir de cause que je viens ici.
J'aime bien le "il suffit"; car je suis déjà allé dans la bible, mais sans étude de liturgie, beaucoup de passages restent incompris du pékin de base...
J'ai besoin de récupérer les variables, j'ai testé les différentes solutions qui me sont proposées ci-dessus, et je n'ai que des résultats d'erreur :
J'ai tenté ça selon la bible, ça ne donne rien :
figure toi que c en désespoir de cause que je viens ici.
J'aime bien le "il suffit"; car je suis déjà allé dans la bible, mais sans étude de liturgie, beaucoup de passages restent incompris du pékin de base...
J'ai besoin de récupérer les variables, j'ai testé les différentes solutions qui me sont proposées ci-dessus, et je n'ai que des résultats d'erreur :
/* Tableau numérique */ $row = mysqli_fetch_array($result, MYSQLI_NUM); printf ("%s (%s)\n", $row[0], $row[1]); /* Tableau associatif */ $row = mysqli_fetch_array($result, MYSQLI_ASSOC); printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]); /* Tableau associatif et numérique */ $row = mysqli_fetch_array($result, MYSQLI_BOTH); printf ("%s (%s)\n", $row[0], $row["CountryCode"]); /* Libération des résultats */ mysqli_free_result($result); /* Fermeture de la connexion */ mysqli_close($link);
J'ai tenté ça selon la bible, ça ne donne rien :
$result ="SELECT titre, nom, FROM mr_clients WHERE client_id ='".$client_id."'"; $res1 = mysqli_query($link, $result ); /* Tableau associatif */ $row = mysqli_fetch_array($res1, MYSQLI_ASSOC); printf ("%s (%s)\n", $row["titre"], $row["nom"]); /* Libération des résultats */ mysqli_free_res1($res1);
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 717
26 sept. 2016 à 15:19
26 sept. 2016 à 15:19
Quand tu as un (ou plusieurs ) messages d'erreur... il serait bien de le(s) donner... que l'on sache ce qu'il t'arrive exactement....
Ensuite... tu as, dans les exemples de code la variable $link .... celle-ci correspond à ta variable $conn de ta connexion.....
Je t'invite à nous poster l'intégralité de ton code actuel + nous préciser les messages d'erreurs ( complets !! ) que tu rencontres.
C'est seulement à partir de ces données que nous pourrons t'aider.
Ensuite... tu as, dans les exemples de code la variable $link .... celle-ci correspond à ta variable $conn de ta connexion.....
Je t'invite à nous poster l'intégralité de ton code actuel + nous préciser les messages d'erreurs ( complets !! ) que tu rencontres.
C'est seulement à partir de ces données que nous pourrons t'aider.
maxireussite
Messages postés
372
Date d'inscription
jeudi 10 mai 2007
Statut
Membre
Dernière intervention
11 mars 2020
5
Modifié par maxireussite le 26/09/2016 à 15:35
Modifié par maxireussite le 26/09/2016 à 15:35
Je te remercie bcp de ton aide.
J'ai avant tout un problème : je ne suis même certain que ce soit le code qui réponde à mon besoin exprimé initialement. Je rappelle j'ai besoin de récupérer des variables pour m'en servir plus loin.
Selon la bible, voici ce que je propose : peut-on me dire si c le code approprié, même s'il y des erreurs ? :
Voilà ce que j'obtiens comme erreur :
J'ai avant tout un problème : je ne suis même certain que ce soit le code qui réponde à mon besoin exprimé initialement. Je rappelle j'ai besoin de récupérer des variables pour m'en servir plus loin.
Selon la bible, voici ce que je propose : peut-on me dire si c le code approprié, même s'il y des erreurs ? :
$result ="SELECT titre, nom, FROM mr_clients WHERE client_id ='".$client_id."'"; $res1 = mysqli_query($conn, $result ); /* Tableau associatif */ $row = mysqli_fetch_array($res1, MYSQLI_ASSOC); printf ("%s (%s)\n", $row["titre"], $row["nom"]); /* Libération des résultats */ mysqli_free_res1($res1);
Voilà ce que j'obtiens comme erreur :
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
maxireussite
Messages postés
372
Date d'inscription
jeudi 10 mai 2007
Statut
Membre
Dernière intervention
11 mars 2020
5
Modifié par maxireussite le 26/09/2016 à 15:42
Modifié par maxireussite le 26/09/2016 à 15:42
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 717
26 sept. 2016 à 16:09
26 sept. 2016 à 16:09
Le message d'erreur est clair :
ligne 295 de ton fichier php ... La fonction mysqli_free_res1 est inconnue ......
La bonne syntaxe est : mysqli_free_result
https://www.php.net/manual/fr/mysqli-result.free.php
ligne 295 de ton fichier php ... La fonction mysqli_free_res1 est inconnue ......
La bonne syntaxe est : mysqli_free_result
https://www.php.net/manual/fr/mysqli-result.free.php
maxireussite
Messages postés
372
Date d'inscription
jeudi 10 mai 2007
Statut
Membre
Dernière intervention
11 mars 2020
5
Modifié par maxireussite le 26/09/2016 à 16:50
Modifié par maxireussite le 26/09/2016 à 16:50
Merci.
La formule corrigée n'affiche plus aucune erreur :
MAIS ma question demeure :
comment récupérer les variables $titre et $nom , puisque là je n'arrive pas à les récupérer pour m'en servir plus loin ?
Avec Mysql ma formule initiale (voir début du post), me le permettait, là comment faire avec Mysqli ?
Merci de vos lumières.
La formule corrigée n'affiche plus aucune erreur :
$result ="SELECT titre, nom FROM mr_clients WHERE client_id ='".$client_id."'"; $res1 = mysqli_query($conn, $result); /* Tableau associatif */ $row = mysqli_fetch_array($res1, MYSQLI_ASSOC); printf ("%s (%s)\n", $row["titre"], $row["nom"]); /* Libération des résultats */ mysqli_free_result($res1);
MAIS ma question demeure :
comment récupérer les variables $titre et $nom , puisque là je n'arrive pas à les récupérer pour m'en servir plus loin ?
Avec Mysql ma formule initiale (voir début du post), me le permettait, là comment faire avec Mysqli ?
Merci de vos lumières.
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 717
26 sept. 2016 à 17:02
26 sept. 2016 à 17:02
De la même façon que tu les utlises dans ta ligne de code :
ou même dans ton précédent code (celui en version mysql )
...
Les données sont stockées dans un array ( $row)
donc tes variables sont :
Ne le prend pas mal ... mais ..... c'est un peu le b.a.ba de la programmation... savoir manipuler les différents types de variables.
Si tu ne connais pas, je pense que tu devrais commencer par reprendre les bases de la programmation PHP avant d'essayer de poursuivre ton dev actuel. Tu as trop de lacunes pour pouvoir correctement avancer;......
printf ("%s (%s)\n", $row["titre"], $row["nom"]);
ou même dans ton précédent code (celui en version mysql )
...
Les données sont stockées dans un array ( $row)
donc tes variables sont :
$titre = $row["titre"]; $nom = $row["nom"];
Ne le prend pas mal ... mais ..... c'est un peu le b.a.ba de la programmation... savoir manipuler les différents types de variables.
Si tu ne connais pas, je pense que tu devrais commencer par reprendre les bases de la programmation PHP avant d'essayer de poursuivre ton dev actuel. Tu as trop de lacunes pour pouvoir correctement avancer;......
maxireussite
Messages postés
372
Date d'inscription
jeudi 10 mai 2007
Statut
Membre
Dernière intervention
11 mars 2020
5
26 sept. 2016 à 17:37
26 sept. 2016 à 17:37
MErci bcp.
je ne le prends pas mal.
Figure toi que j'ai passé des nuits et des nuits à tenter d'apprivoiser MysQl, et voila que l'on me dit que maintenant c... MysQli.
J'adore bidouiller, mais je n'ai gère le temps de RE-devenir programmateur averti. Je n'ai pas encore eu trop le temps de m'y remettre en nuits blanches, d'autant que c tout de suite de j'ai le problème.
Merci pour ton aide précieuse, je vérifie tout cela.
je ne le prends pas mal.
Figure toi que j'ai passé des nuits et des nuits à tenter d'apprivoiser MysQl, et voila que l'on me dit que maintenant c... MysQli.
J'adore bidouiller, mais je n'ai gère le temps de RE-devenir programmateur averti. Je n'ai pas encore eu trop le temps de m'y remettre en nuits blanches, d'autant que c tout de suite de j'ai le problème.
Merci pour ton aide précieuse, je vérifie tout cela.
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 717
26 sept. 2016 à 18:10
26 sept. 2016 à 18:10
Figure toi que j'ai passé des nuits et des nuits à tenter d'apprivoiser MysQl, et voila que l'on me dit que maintenant c... MysQli.
Il n'y a pas de grosses différences entre les deux.
La syntaxe des fonctions mysql change un peu ( on ajoute un "i" et on passe parfois, pour certaines instructions, la connexion ($con dans ton exemple)).
Sinon, le reste du code fonctionne à l'identique (surtout au niveau PHP/html/css ).
mais je n'ai gère le temps de RE-devenir programmateur averti. Je n'ai pas encore eu trop le temps de m'y remettre en nuits blanches
Un programmateur.. c'est pratique.. surtout la nuit ... pour commander les heures de déclenchement de lumières electriques ou de la machine à laver...
Un programmeur... c'est mieux (pour coder..).
Bon... j'arrête de te charier. :-)
Bonne soirée.
Et n'hésite pas à revenir si tu as d'autres soucis/questions.
J'essaierai d'être un peu moins "brut" dans ma façon re répondre.
PS: Si cette question est résolue, merci de ne pas oublier de mettre le sujet en "RESOLU". (lien qui se trouve sous le titre de ta question tout en haut..)
@++
Cordialement,
Jordane.
maxireussite
Messages postés
372
Date d'inscription
jeudi 10 mai 2007
Statut
Membre
Dernière intervention
11 mars 2020
5
Modifié par maxireussite le 26/09/2016 à 18:17
Modifié par maxireussite le 26/09/2016 à 18:17
j'aime charrier aussi à mon tour. MErci en tout cas.
Je suis dessus, dès que ça marche je ne manquerai pas de le signaler.
A+
Je suis dessus, dès que ça marche je ne manquerai pas de le signaler.
A+
maxireussite
Messages postés
372
Date d'inscription
jeudi 10 mai 2007
Statut
Membre
Dernière intervention
11 mars 2020
5
Modifié par maxireussite le 26/09/2016 à 18:29
Modifié par maxireussite le 26/09/2016 à 18:29
Aux forceps :))
A optimiser peut être, mais en tout cas ça marche.
Merci Jordane45
$sql2 ="SELECT titre, nom FROM mr_clients WHERE client_id ='".$client_id."'"; $res1 = mysqli_query($conn, $sql2); /* Tableau associatif */ $row = mysqli_fetch_array($res1, MYSQLI_ASSOC); $titre=$row['titre']; $nom=$row['nom']; /* Libération des résultats */ mysqli_free_result($res1);
A optimiser peut être, mais en tout cas ça marche.
Merci Jordane45