Ma Boucle de Requete SQL ne passe pas
Dernière réponse : dans Programmation
Bonjour tout le monde !
Ca fait deux trois jours que je coince sur un facheux problème qui commence sérieusement à me prendre la tête et c'est pourquoi je viens vous prendre la votre avec ce même probleme : je me sentirai moins seul comme ca !
Bon je me lance : j'utilise de l'ajax pour actualiser une liste déroulante dont le contenu varie en fonction de la première liste. Ainsi une fois les deux listes prêtes, on clique sur un bouton submit : on poste les deux valeurs des variables correspondant aux deux listes (id_categorie et id_fonction) en passant un parametre action=action et ce, sur la même page !
Ainsi, si action=action on effectue la requete SQL où id_categorie=$id_categorie et de meme pour id_fonction.
Simplement, le navigateur ne passe pas dans la boucle...
Vous avez l'exemple ici : www.dream-ressources.com/telechargement/telechargement.php
et le code de la page telechargement.php :
Merci d'avance pour l'attention portée à ce message!
Ca fait deux trois jours que je coince sur un facheux problème qui commence sérieusement à me prendre la tête et c'est pourquoi je viens vous prendre la votre avec ce même probleme : je me sentirai moins seul comme ca !
Bon je me lance : j'utilise de l'ajax pour actualiser une liste déroulante dont le contenu varie en fonction de la première liste. Ainsi une fois les deux listes prêtes, on clique sur un bouton submit : on poste les deux valeurs des variables correspondant aux deux listes (id_categorie et id_fonction) en passant un parametre action=action et ce, sur la même page !
Ainsi, si action=action on effectue la requete SQL où id_categorie=$id_categorie et de meme pour id_fonction.
Simplement, le navigateur ne passe pas dans la boucle...
Vous avez l'exemple ici : www.dream-ressources.com/telechargement/telechargement.php
et le code de la page telechargement.php :
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <script type="text/javascript"> function sendData(param, page) { if(document.all) { //Internet Explorer var XhrObj = new ActiveXObject("Microsoft.XMLHTTP") ; } else { //Mozilla var XhrObj = new XMLHttpRequest(); } var content = document.getElementById("contenu"); XhrObj.open("POST", page); XhrObj.onreadystatechange = function() { if (XhrObj.readyState == 4 && XhrObj.status == 200) content.innerHTML = XhrObj.responseText ; } XhrObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); XhrObj.send(param); } </script> </head> <body> <?php include('conf.php'); if(isset($_POST['id_categorie'])) $id_categorie=$_POST['id_categorie']; else $id_categorie=""; if(isset($_POST['id_fonction'])) $id_fonction=$_POST['id_fonction']; else $id_fonction=""; $action = $_GET["action"]; // Include DEBUG : echo("=> ".$id_categorie." - ".$id_fonction." - ".$action ); // Création d'une variable de test $i=0; // Création d'une variable pour conserver la valeur du premier enregistrement $j=0; // Récupération des données $req_categorie = "SELECT id,nom_categorie FROM dr_telechargement_categorie ORDER BY nom_categorie;"; $result= mysql_query ($req_categorie) or die ("Récupération des données impossible"); echo "<form method='POST' action='telechargement.php?action=action'>";?> <select size="1" name="id_categorie" OnChange="sendData('id='+this.value,'telechargement_actu_liste.php')" onKeyUp="sendData('id='+this.value,'telechargement_actu_liste.php')"> <?php while ($dt=mysql_fetch_row($result)) { // Remplissage de la liste déroulante, des données récupérées echo "<option value=".($dt[0]).">".($dt[1])."</option>"; // On conserve la valeur du premier enregistrement if ($i==0) { $j=$dt[0]; $i=1; } } ?> </select><br><br> <div id="contenu"> <?php // Affichage des sous catégories correspondant à la catégorie echo "<select size='1' name='id_fonction'>"; $rq="SELECT * FROM dr_telechargement_fonction WHERE id_categorie=".$j." ORDER BY nom_fonction;"; $result= mysql_query ($rq) or die ("Recuperation des données impossible"); // On innitialise la variable i $i=0; while ($dt=mysql_fetch_row($result)) { echo "<option value=".utf8_encode($dt[0]).">".utf8_encode($dt[2])."</option><br>"; } echo "</select>"; ?> </div> </form> <?php if ($action == "action") { echo('<table border="0" cellpadding="0" cellspacing="0" width="520">'); $req_sommaire = mysql_query("SELECT * FROM dr_telechargement WHERE id_categorie=\"$id_categorie\" and id_fonction=\"$id_fonction\""); while($ligne = mysql_fetch_array($req_sommaire)) { $id = $ligne["id"]; $id_categorie = $ligne["id_categorie"]; $id_fonction = $ligne["id_fonction"]; $jour = $ligne["jour"]; $mois = $ligne["mois"]; $annee = $ligne["annee"]; $heure = $ligne["heure"]; $titre = $ligne["titre"]; $editeur = $ligne["editeur"]; $id_langue = $ligne["id_langue"]; $taille = $ligne["taille"]; $auteur = $ligne["auteur"]; $lien = $ligne["lien"]; $description = $ligne["description"]; $image = $ligne["image"]; $succes = $ligne["succes"]; if ($image == "") { $image = "defaut.jpg"; } echo('<tr> <td width="520"><a href="index.php?page=telechargement-fiche&id_telechargement='.$id.'"><strong><font color="#ffc000">'.$titre.'</font></strong><a></td> </tr> <tr> <td width="520">'.$description.' ...</td> </tr> <tr> <td> </td> </tr>'); } echo('</table>'); } ?>
Merci d'avance pour l'attention portée à ce message!
Autres pages sur : boucle requete sql passe
Lassé par la pub ? Créez un compte
salut,
en gros, qu'est ce qui ne marche pas?
de quelle boucle tu parles?
vu qu'on a pas ta base, on peut pas trop voir...
si tu veux tester tes requetes, il suffit de mettre un echo avant pour voir la requete exacte qui est passé au sgbd et rajouter un or die pour vérifier le succés de la requête:
exemple:
en gros, qu'est ce qui ne marche pas?
de quelle boucle tu parles?
vu qu'on a pas ta base, on peut pas trop voir...
si tu veux tester tes requetes, il suffit de mettre un echo avant pour voir la requete exacte qui est passé au sgbd et rajouter un or die pour vérifier le succés de la requête:
exemple:
$sql ="SELECT * FROM dr_telechargement WHERE id_categorie=\"$id_categorie\" and id_fonction=\"$id_fonction\""; echo "<pre>$sql\n</pre>"; $req_sommaire = mysql_query($sql) or die (mysql_error());
Merci Coca25, je suis désolé j'avais pas expliqué quelle boucle ne passait pas, mais tu l'as trouvé! En effet il ne veut pas m'afficher le contenu de la boucle ... c'est vrai que j'avais pas pensé a retourner le message d'erreur SQL, mais maitenant que c'est fait l'information est très ... insufisante =/ Je vous renvoie vers la meme page : http://www.dream-ressources.com/telechargement/telechargement.php
Merci pour l'intérêt porté à mon problème!
Merci pour l'intérêt porté à mon problème!
Certes, je n'avais en effet pas vu cette absence de () ... Toutes mes excuses. Merci poru ton conseil enlendilm, j'allais m'en occuper une fois tous les "gros problemes" résolus. Merci bien!
Maintenant donc pour en revenir à nos mouton, la requete est vide (Query was empty) Oups maintenat que j'y pense, avec tous ces critères, peut etre qu'aucune réponse ne correspond à ces critères ... Je vais vérifier celà ... Après un bon match et quelques bierres =)
Bonne soirée à tous! et merci pour tous ces conseils =)
Maintenant donc pour en revenir à nos mouton, la requete est vide (Query was empty) Oups maintenat que j'y pense, avec tous ces critères, peut etre qu'aucune réponse ne correspond à ces critères ... Je vais vérifier celà ... Après un bon match et quelques bierres =)
Bonne soirée à tous! et merci pour tous ces conseils =)
Lassé par la pub ? Créez un compte
- Contenus similaires :
- Solutions[VBA] requete SQL
- ForumRequête SQL pour 2 tables
- SolutionsRequete PHP selon 2 tables SQL avec id commun
- SolutionsRequete SQL
- Forum[Résolu] Pb de date avec requête SQL access
- ForumRemplir Combobox avec requête SQL vb.net
- Forum[résolu]Syntaxe requête sql
- Forum[Résolu] Requete SQL sur tous les enregistrements sauf 1 ?
- ForumRequete MySQL et boucle while
- Voir plus
)