Besoin d'aide, récupération d'une info dans la BDD
Résolu
Truncky
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
-
Truncky Messages postés 13 Date d'inscription Statut Membre Dernière intervention -
Truncky Messages postés 13 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je possède un script php (Un système d'échange de point virtuels).
Et pour utiliser ce système, il faut le pseudo du membre, qui est à rentrer dans une case.
Donc on récupère le PSEUDO du membre, mais moi, pour mon script, il faudrait aussi récupéré l'ID du membre dans la Base De Données (BDD).
J'ai essayer
Bien entendu, $pseudo =
Je vous donne le script complet.
Merci de votre aide ! :)
Je possède un script php (Un système d'échange de point virtuels).
Et pour utiliser ce système, il faut le pseudo du membre, qui est à rentrer dans une case.
Donc on récupère le PSEUDO du membre, mais moi, pour mon script, il faudrait aussi récupéré l'ID du membre dans la Base De Données (BDD).
J'ai essayer
$idmembre = mysql_query('SELECT id FROM membres WHERE pseudo='.$pseudo);
Bien entendu, $pseudo =
$pseudo = $_POST['pseudo'];mais ceci ne marche pas :( .
Je vous donne le script complet.
<?php include('base.php'); include('tete.php'); // Sécurité des variables if (isset($_POST['pseudo'])) { $pseudo = $_POST['pseudo']; } if (isset($_POST['montant'])) { $montant = $_POST['montant']; } //le id du membre poste $idmembre = mysql_query('SELECT id FROM membres WHERE pseudo='.$pseudo); $reponse = mysql_query('SELECT id, pseudo FROM membres ORDER BY pseudo ASC'); while($donnees = mysql_fetch_assoc($reponse)) { echo ' <option value="' . intval($donnees['id']) . '">' . stripslashes(htmlspecialchars($donnees['pseudo'])) . '</option> '; } // On récupère le nombre d'argent que je prossède $requete2 = mysql_query('SELECT argent FROM membres WHERE id = ' . $idmembre); $shop2 = mysql_fetch_assoc($requete2); $argent2 = secure($shop2['argent']); // On récupère le nombre d'argent que je prossède $requete = mysql_query('SELECT argent FROM membres WHERE id = ' . $_SESSION['m']['id']); $shop = mysql_fetch_assoc($requete); $argent = secure($shop['argent']); $reponse = mysql_query('SELECT COUNT(*) FROM membres WHERE pseudo REGEXP "^' . $pseudo .'$"'); $result = mysql_result($reponse, 0); $reponse2 = mysql_query('SELECT pseudo, id FROM membres ORDER BY pseudo ASC'); if($_GET['etape'] == 1 AND isset($_POST['pseudo'])) { if($_POST['pseudo'] == $_SESSION['m']['pseudo']) { echo' Vous pouver pa doner de largent a vous meme. '; } else{ if($argent >= $montant) { if($result == 0) { echo' Ce pseudo existe pas '; } else{ if(!is_numeric($montant)) { echo' Le montant doit etre compose uniquements de chiffres. '; } else { if(!empty($_POST['pseudo']) AND !empty($_POST['montant'])) { if(isset($_POST['montant'])) { echo' kaka ' . $argent2 . ' '; } else { echo' Vous n\'avez pas indique le montant '; } } else { echo' Vous n\'avez pas remplis tous les champs '; } } } } else { echo' Vous ne pouvez pas donner plus d\'argent que vous en avez, ou donner la totalite de votre argent. '; } } } else { echo' <form method="post" action="banque.php?etape=1"> <div class="bloc1"> <h3>Banque ' . $argent . ' ' . $idmembre . ' ' . $_SESSION['m']['pseudo'] . '</h3> <div class="texte"> </center><br /><br /> <center><font color="DodgerBlue"><strong>Informations sur la salle:</strong></font></center> <div class="separate"></div><br /> <label for="pseudo"><font color="red">* Pseudo du receveur</font> :</label> <input type="text" id="pseudo" name="pseudo" /><br/> <label for="passe"><font color="red">* Montant</font> :</label> <input id="montant" "type="text" name="montant" /><br /> <center><input type="submit" value="Valider" /> </div> </center></div> </form> '; } ?>
Merci de votre aide ! :)
A voir également:
- Besoin d'aide, récupération d'une info dans la BDD
- Récupération de déchets - Guide
- Crystal disk info - Télécharger - Informations & Diagnostic
- Info pc - Guide
- Wifi info view - Télécharger - Divers Réseau & Wi-Fi
- I-info - Télécharger - Médias et Actualité
2 réponses
Bonjour,
à moins que ton pseudo ne soit une valeur numérique, il va falloir mettre des quotes.
à moins que ton pseudo ne soit une valeur numérique, il va falloir mettre des quotes.
$idmembre = mysql_query("SELECT id FROM membres WHERE pseudo='$pseudo'");
Salut,
Cette méthode de faire est désuète et crois moi, y'a vraiment pas de sécurité dans ce que tu fais. Tu peux vite être victime d'injection SQL sur ton script.
Essais plutôt d'utiliser l'API PDO pour te connecter à ta base de données et récupérer les enregistrements en faisant appel aux requêtes préparées.
Cette méthode de faire est désuète et crois moi, y'a vraiment pas de sécurité dans ce que tu fais. Tu peux vite être victime d'injection SQL sur ton script.
Essais plutôt d'utiliser l'API PDO pour te connecter à ta base de données et récupérer les enregistrements en faisant appel aux requêtes préparées.
Et ça met Resource id #41 avec TOUS les pseudos que j'ai essayés :(
C'est le genre de chose qu'il faut mettre comme ceci: ?
(Je débute dans le php)
ça devrait fonctionner.
mysql_query retourne un jeu d'enregistrement que tu dois parcourir, si tu sais qu'il n'y a qu'une valeur qui t'intéresse, tu peux la récupérer comme ceci.