Une requete qui s'adapte

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Une requete qui s'adapte

Re: Une requete qui s'adapte

par stealth35 » 25 sept. 2010, 16:35

ta pas mis les bon nom ton pdo il s'appelle $bdd mais pour les erreur ta recopier et ta mis $dbh, si ta pas d'erreur a se niveau c'est que le niveau d'erreur est trop bas

Re: Une requete qui s'adapte

par Jacksons » 25 sept. 2010, 12:04

Excus eje me suis trompé de code la il y a les bons noms:
<?php      

      	            	try
{
	$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', 'root');
	$dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING );

}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}  
 
?>

<?php
    
   $theme = htmlspecialchars($_GET['theme']);
   $id = htmlspecialchars($_GET['id']);

     $reponse = $bdd->query('SELECT themes.theme, themes.id, questions.Question FROM themes, questions WHERE questions.id_themes = themes.id AND themes.id = '. $theme. '');
        
     while($donnees = $reponse->fetch()){
     	var_dump($donnees);

?>
 
 <div id = "quest"> <?php echo $donnees['Question']; ?> </div>
 
    <?php
     }
     ?>

Re: Une requete qui s'adapte

par Jacksons » 25 sept. 2010, 12:02

Oui j'ai bien les erreurs activées et même avec var_dump je n'ai aucune erreur qui s'affiche ! voici le code complet sachant que $theme c'est le theme que je récupère qui est sur la page précédente:
 <?php      

      	            	try
{
	$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', 'root');
	$dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING );

}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}  
 
?>

<?php
    
   $themex = htmlspecialchars($_GET['theme']);
   $id = htmlspecialchars($_GET['id']);

     $reponse = $bdd->query('SELECT themex.theme, themex.id, theme_tintin.Question FROM themex, theme_tintin WHERE theme_tintin.id_themex = themex.id AND themex.id = '. $themex. '');
        
     while($donnees = $reponse->fetch()){
     	var_dump($donnees);

?>
 
 <div id = "quest"> <?php echo $donnees['Question']; ?> </div>
 
    <?php
     }
     ?>

Re: Une requete qui s'adapte

par stealth35 » 25 sept. 2010, 00:22

Merci mais sa ne change absolument rien... je comprend vraiment pas ce qui peut foirer là...
montre ce que t'as fais

sinon fais
$donnees = $reponse->fetch();
var_dump($donnees);
ta bien les erreur php d'activé avec le niveau au maximum ?

Re: Une requete qui s'adapte

par Jacksons » 25 sept. 2010, 00:20

Merci mais sa ne change absolument rien... je comprend vraiment pas ce qui peut foirer là...

Re: Une requete qui s'adapte

par stealth35 » 24 sept. 2010, 22:03

Re: Une requete qui s'adapte

par Jacksons » 24 sept. 2010, 21:33

Salut !

Sa ne marche pas pourtant j'ai bien pris soin de récupérer ma variable voici le code complet:
       <?php      

      	            	try
{
	$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', 'root');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}  
 
?>

<?php
    
   $theme = htmlspecialchars($_GET['theme']);

    
  $reponse = $bdd->query('SELECT theme.themes, theme.id, questions.Question FROM theme, questions WHERE themes.id = ' . $theme . ' AND questions.id_theme = themes.id');

  
    
     $donnees = $reponse->fetch();

?>
 
 <div id = "quest"> <?php echo $donnees['Question']; ?> </div>
Résultat: rien ne s'affiche quelque soit le theme choisi !

Re: Une requete qui s'adapte

par xTG » 22 sept. 2010, 08:18

$reponse = $bdd->query('SELECT theme.themes, theme.id, questions.Question FROM theme, questions WHERE themes.id = ' . $theme . ' AND questions.id_theme = themes.id'); 

Re: Une requete qui s'adapte

par Jacksons » 21 sept. 2010, 20:03

Hmm mon problème persiste malres tout !

J'ai créé un champ id_theme dans les questions en lui mettant 1 pour les questions qui correspondent au theme 1 et 2 pour les questions qui correspondent au theme 2.

Ensuite voilà la requete que je tape :




$reponse = $bdd->query('SELECT theme.themes, theme.id, questions.Question FROM theme, questions WHERE questions.id_theme = themes.id');

$donnees = $reponse->fetch();

?>

<div id = "quest"> <?php echo $donnees['Question']; ?> </div>

Résultat: sa m'affiche toujours la même question quelque soit le theme ! (cette question affichée est la première de ma table). Sa vient de quoi ?

Re: Une requete qui s'adapte

par xTG » 19 sept. 2010, 12:19

Tu ne lui affectes aucune valeur à ton champs. C'est donc normal.
Relis ma requête, j'y affecte une variable.

Re: Une requete qui s'adapte

par Jacksons » 19 sept. 2010, 11:01

Oui j'ai ce champs ! ensuite je fais cette requête:

 <?php
   	$reponse = $bdd->query("SELECT themex.theme, theme_tintin.Question, theme_tintin.Rep1, theme_tintin.Repjuste, theme_tintin.Rep3 FROM themex, theme_tintin WHERE theme_tintin.id_themex = themex.id");
   	
   while($donnees = $reponse->fetch()) {
   	echo $donnees['Question'];
   }
   	?>
J'ai mis là chaques question l'id_theme correspondant et résultat quelque soit le theme choisis toutes les questions de tous les themes s'affichent sa ne filtre pas !

Ma requête es fausse ?

Re: Une requete qui s'adapte

par xTG » 18 sept. 2010, 20:25

Je suppose que tu as dans tes enregistrements un champs qui référence le thème de l'enregistrement non ?
Dans ce cas il te suffit de mettre le thème dans la clause where.
// $theme est le thème choisi aléatoirement
$sql = "SELECT id, contenu FROM mesQuestions WHERE theme=$theme";
$req = mysql_query($sql);

Une requete qui s'adapte

par Jacksons » 18 sept. 2010, 18:43

Salut tout le monde

Voilà mon problème: Sur mon site, arrive un moment où l'utilisateur à le choix entre 2 thèmes:

- Thème X
- Thème Y

Ces 2 thèmes sont choisis aléatoirement parmis ceux que j'ai créés. Pour cela, j'ai fait 2 tables différentes en faisant 2 requêtes différentes. Jusque là pas de soucis.

Seulement voilà, étant donné que je n'ai aucune idée du thème qui va tomber, comment je peux faire pour associer les questions du thème au thème qui va être choisis ?! Exemple:

-Thème 1: les oiseaux
-Thème 2: les villes

Comment je fais pour que si je choisis le thème "oiseaux" j'ai pas des questions de la ville ou autre qui tombe en rappellant que je ne sais jamais quel thème va tomber !

En espérant avoir été clair, merci d'avance pour votre aide !