Partage
  • Partager sur Facebook
  • Partager sur Twitter

requete a variable nombreuses

    28 juin 2010 à 16:35:07

    Bonjour,
    J'ai cree une classe de ma base de donnees avec une 10zaine d'attributs.

    l'utilisateur est cense recherche ces donnees en ecrivant les variables qu'ils souhaitent sur une premiere page avec des formulaires,bouton,...
    je dois donc faire une requetes sql sur la deuxiemen page en utilisant des $_POST

    et j'ai ecris Select * from maclasse where var1:=var1 AND ... AND var10:=var10
    en utlisant donc les variabes preparees

    tout va bien si l'utilisateur rempli tous les champs mais ce sera impossible et donc il peut mettre indifferent a la plupart des variables.
    Dans ce cac, ces variables valeront NULL et ma requete deviendra fausse car la donnee recherche possede bien cette variable mais elle est inconnue!!

    bref jespere que je me suis fait comprendre
    la question est comment je fais pour ecrire une requete ou plusieurs pour gerer tous les cas possibles en fonction des variables inscrites ou NON dans la page formulaire ?

    Merci de votre attention
    • Partager sur Facebook
    • Partager sur Twitter
      28 juin 2010 à 21:01:53

      En remplaçant tes AND par des OR ?
      • Partager sur Facebook
      • Partager sur Twitter
      Directeur technique, créateur de jeux HTML5 et fan de JavaScript | La suite de OnHack est sur les rails !
        28 juin 2010 à 22:32:57

        Tu pourrais modeler avec PHP ta requête SQL en fonction des valeurs disponibles que l'utilisateur à envoyé.
        Par exemple:

        $req = "
        	SELECT ph.photo_url
        	FROM photo AS ph
        	WHERE ph.photo_fk_groupe_photo = pa.pays_fk_groupe_photo";
        
        //----------------------------------------------
        //un des paramètres = x
        //----------------------------------------------	
        if(!empty($p['un_parametre'])) $req .= "
        
        	AND ph.photo_parametre1 = " . $this->protect($p['un_parametre']);
        
        • Partager sur Facebook
        • Partager sur Twitter
          28 juin 2010 à 22:35:39

          ca donerais des solutions a la requete effectivement
          mais pas forcement en accord avec toutes les variables si tu vois ce que je veux dire
          si je rempli kune variable oui ca marcherais mais si yen a plusieurs
          yora plusieurs solutions et pas coherentes entre elles

          jai pense faire tous les cas possibles avec des conditions if(!empty..
          mais ds ce cas la c des centaines de ligne de codes..
          • Partager sur Facebook
          • Partager sur Twitter
            29 juin 2010 à 0:12:01

            $erreur = FALSE;
            $end = FALSE;
            $i=0;
            while(!$erreur || !$end)
            {
                 if(empty($_POST['variable'][$i]) || !is_numeric($_POST['variable'][$i]))
                 {
                      $erreur = 1;         
                 }
            
                 if($i > 100)
                 {
                      $end = 1;
                 }
            
            $i++;
            }
            


            Le tout c'est de bien envoyer les variables, via le $_POST.
            • Partager sur Facebook
            • Partager sur Twitter

            requete a variable nombreuses

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown