Souci jointure
Résolu
Lucryio
Messages postés
206
Date d'inscription
Statut
Membre
Dernière intervention
-
Lucryio Messages postés 206 Date d'inscription Statut Membre Dernière intervention -
Lucryio Messages postés 206 Date d'inscription Statut Membre Dernière intervention -
Bonsoir,
Je viens à nouveau vous car, j'ai un autre souci qui est le suivant :
J'ai fait une jointure de table afin de pouvoir afficher une liste de chose que les membres ont mais le souci c'est que la liste est vide alors qu'elle devrait contenir des choses.
Voici le code correspondant :
Si vous avez une idée, se serais sympa.
Merci par avance.
Je viens à nouveau vous car, j'ai un autre souci qui est le suivant :
J'ai fait une jointure de table afin de pouvoir afficher une liste de chose que les membres ont mais le souci c'est que la liste est vide alors qu'elle devrait contenir des choses.
Voici le code correspondant :
Suppression de Pokemon >> <form method="post" action="moderation.php"> <label for="membres">A quel membre veux-tu faire une suppression de pokemon ?</label><br /> <select name="membres" id="membres"> <?php $reponse = $bdd->query('SELECT * FROM membres'); while ($donnees = $reponse->fetch()) { ?> <option value=" <?php echo $donnees['ID']; ?>"> <?php echo $donnees['ID']; echo $donnees['pseudo']; ?></option> <?php } $reponse->closeCursor(); ?> </select> <input type="submit" name="envoyer" value="Choisir ce membre" /> </form> <?php if ($_POST['envoyer']) { $sql = $bdd->query("SELECT transfertspokemon.ID AS id_poke, transfertspokemon.membre_id, transfertspokemon.no, transfertspokemon.niveau, transfertspokemon.lieu, transfertspokemon.sexe, transfertspokemon.points, transfertspokemon.shiney, membres.ID AS id_membre, membres.pseudo FROM transfertspokemon INNER JOIN membres ON transfertspokemon.membre_id = membres.ID WHERE membre_id='".$_POST['id_membre']."'"); echo "<form name='pok-delete' method='post' action='moderation.php'>"; echo "<select name='pokemon'>"; while($don = $sql->fetch()) { echo "<option value='".$don['id_poke']."' for='item'><b>".($don['no'])."</b></option>"; } echo "</select>"; echo "</form>"; } else { echo 'Tu doit selectionner un membres'; } if (!empty($_POST['pok-delete'])) { // REQUETE DE SUPPRESSION $suppr = $_POST['pokemon']; $sql = $bdd->execute("DELETE FROM transfertspokemon WHERE ID='".$suppr."'"); } ?>
Si vous avez une idée, se serais sympa.
Merci par avance.
A voir également:
- Souci jointure
- Jointure excel - Guide
- Pb de jointure ✓ - Forum MySQL
- [Excel,vba,ado] faire une jointure de tables - Forum VB / VBA
- Jointure en php - Forum PHP
- PHP Mysql jointure ✓ - Forum MySQL
2 réponses
Salut,
En complément de la réponse de jordane45, l'attribut name de ta balise select est égal à "membres", or dans le traitement de ton formulaire tu essayes de récupérer le paramètre post "id_membres".
Bonne journée
En complément de la réponse de jordane45, l'attribut name de ta balise select est égal à "membres", or dans le traitement de ton formulaire tu essayes de récupérer le paramètre post "id_membres".
Bonne journée
Même réponse que pour tes messages précédents !
1 - Récupère PROPREMENT les variables AVANT de les utiliser
2 - TESTES ta requête en direct dans ta BDD (en prenant soin de remplacer les variables par des valeurs existantes) et regarde ce que ça donne.
N'hésites pas non plus à faire des retours à la ligne dans ta requête histoire qu'elle soit plus lisible.
Penses également à utiliser des ALIAS pour les noms des tables (là encore pour faciliter la lecture de ta requête)
Cordialement,
Jordane
1 - Récupère PROPREMENT les variables AVANT de les utiliser
$id_membre = isset($_POST['id_membre']) ? $_POST['id_membre'] : NULL;
2 - TESTES ta requête en direct dans ta BDD (en prenant soin de remplacer les variables par des valeurs existantes) et regarde ce que ça donne.
N'hésites pas non plus à faire des retours à la ligne dans ta requête histoire qu'elle soit plus lisible.
Penses également à utiliser des ALIAS pour les noms des tables (là encore pour faciliter la lecture de ta requête)
$sql = "SELECT T.ID AS id_poke ,T.membre_id , T.no , T.niveau , T.lieu , T.sexe , T.points , T.shiney , M.ID AS id_membre , M.pseudo FROM transfertspokemon T INNER JOIN membres M ON T.membre_id = M.ID WHERE T.membre_id='$id_membre'"; $resultat = $bdd->query($sql);
Cordialement,
Jordane
Heu par contre, j'ai un souci dans ma requete de suppression :
une idée ?
Que vaut $_POST['id_poke'] et $_POST['pok-delete'] ?