Probleme avec requete php SELECT
gillesnas84
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
88av Messages postés 263 Date d'inscription Statut Membre Dernière intervention -
88av Messages postés 263 Date d'inscription Statut Membre Dernière intervention -
Bonjour , je debute dans la programmation php et la manipulation des bdd sous mysql.
J'ai récemment developpé une appli qui gere les envois de courriers dans une agence de voyage.
Now je travaille sur un autre projet et j'ai un souci avec l'affichage d'information stockées dans la bdd.
le code de ma requete ci-dessous me renvooi un tableau vide mais il fonctionne quand je donne une valeur constante à l' 'ID'
<?php
require_once "admin/bcpcnx.php";
//fiche indivIDuelle sommaire
$bcpcnx = new mysqli("localhost", "root", "", "bucrepdb");
if ($bcpcnx->connect_errno) {
echo "Echec lors de la connexion à MySQL: (" . $bcpcnx->connect_errno . ") " . $bcpcnx->connect_error;
}
if (!($stmt = $bcpcnx->prepare("SELECT ID , nom, prenom, genre,email,province, ville,statut FROM individu WHERE ID = '".$_GET['ID']."' "))) {
echo "Echec lors de la préparation de la requête : (" . $bcpcnx->errno . ") " . $bcpcnx->error;
}
if (!$stmt->execute()) {
echo "Echec lors de l'exécution de la requête : (" . $stmt->errno . ") " . $stmt->error;
}
if (!($res = $stmt->get_result())) {
echo "Echec lors de la récupération du jeu de résultats : (" . $stmt->errno . ") " . $stmt->error;
$individu = mysqli_fetch_assoc($res);
mysqli_free_result($bcpcnx,$res);
mysqli_close($bcpcnx);
}
//var_dump($res1->fetch_row());
?>
je serai vraiment reconnaissant si quelqu'un pouvais m'aider a ce sujet
J'ai récemment developpé une appli qui gere les envois de courriers dans une agence de voyage.
Now je travaille sur un autre projet et j'ai un souci avec l'affichage d'information stockées dans la bdd.
le code de ma requete ci-dessous me renvooi un tableau vide mais il fonctionne quand je donne une valeur constante à l' 'ID'
<?php
require_once "admin/bcpcnx.php";
//fiche indivIDuelle sommaire
$bcpcnx = new mysqli("localhost", "root", "", "bucrepdb");
if ($bcpcnx->connect_errno) {
echo "Echec lors de la connexion à MySQL: (" . $bcpcnx->connect_errno . ") " . $bcpcnx->connect_error;
}
if (!($stmt = $bcpcnx->prepare("SELECT ID , nom, prenom, genre,email,province, ville,statut FROM individu WHERE ID = '".$_GET['ID']."' "))) {
echo "Echec lors de la préparation de la requête : (" . $bcpcnx->errno . ") " . $bcpcnx->error;
}
if (!$stmt->execute()) {
echo "Echec lors de l'exécution de la requête : (" . $stmt->errno . ") " . $stmt->error;
}
if (!($res = $stmt->get_result())) {
echo "Echec lors de la récupération du jeu de résultats : (" . $stmt->errno . ") " . $stmt->error;
$individu = mysqli_fetch_assoc($res);
mysqli_free_result($bcpcnx,$res);
mysqli_close($bcpcnx);
}
//var_dump($res1->fetch_row());
?>
je serai vraiment reconnaissant si quelqu'un pouvais m'aider a ce sujet
A voir également:
- Probleme avec requete php SELECT
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Requête sql pix - Forum Python
- Php alert ✓ - Forum PHP
- Reboot and select proper boot device - Forum Windows
2 réponses
Bonjour,
Dans ta requete, ici :
Je croit que le $_GET['ID'] peut faire une injection sql :
https://fr.wikipedia.org/wiki/Injection_SQL
Pour éviter ça, regarde ici :
http://fr.openclassrooms.com/informatique/cours/concevez-votre-site-web-avec-php-et-mysql/construire-des-requetes-en-fonction-de-variables
------------------------
Aussi, pour selectionner tous les champs, au lieu de les lister, tu peut faire :
Au revoir
Si vous avez un calcul à faire, vous pouvez aller sur mon site web...
Dans ta requete, ici :
$bcpcnx->prepare("SELECT ID , nom, prenom, genre,email,province, ville,statut FROM individu WHERE ID = '".$_GET['ID']."' ")
Je croit que le $_GET['ID'] peut faire une injection sql :
https://fr.wikipedia.org/wiki/Injection_SQL
Pour éviter ça, regarde ici :
http://fr.openclassrooms.com/informatique/cours/concevez-votre-site-web-avec-php-et-mysql/construire-des-requetes-en-fonction-de-variables
------------------------
Aussi, pour selectionner tous les champs, au lieu de les lister, tu peut faire :
$bcpcnx->prepare("SELECT * FROM individu WHERE ID = '".$_GET['ID']."' ")
Au revoir
Si vous avez un calcul à faire, vous pouvez aller sur mon site web...
HostOfSeraphim
Messages postés
6750
Date d'inscription
Statut
Contributeur
Dernière intervention
1 608
Il peut aussi conserver la liste des champs dans son SELECT pour ne pas retourner trop de données... "SELECT *" est une solution de facilité qui alourdit trop souvent les requêtes.
88av
Messages postés
263
Date d'inscription
Statut
Membre
Dernière intervention
7
D'accord.
gillesnas84
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
merci 88av, mais les champs que je mentionne ci-dessus ne sont que quelques uns d'une table "individu" qui en contient 10 de plus !
88av
Messages postés
263
Date d'inscription
Statut
Membre
Dernière intervention
7
D'accord...