IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

insérer des éléments dans une string


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2011
    Messages
    117
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 117
    Points : 47
    Points
    47
    Par défaut insérer des éléments dans une string
    Bonjour

    y'a t il un truc ou une fonction qui peut insérer des éléments dans une string?

    je veux modifier la syntaxe 'une requête sql dynamiquement
    ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $var = SELECT * FROM schools WHERE teacher = 1 OR teacher = 2 AND student = 1 OR student = 2 OR student = 3 AND classroomId = 12
    donc dans l'exemple ci-dessus je veux pouvoir regrouper les OR dans une parenthèse sinon les résultats de la requête vont pas être correctes.

    je veux transformer dynamiquement via une fonction ou un script cette requête vers ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $var = SELECT * FROM schools WHERE (teacher = 1 OR teacher = 2 ) AND (student = 1 OR student = 2 OR student = 3)  AND classroomId = 12
    merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    il faudrait commencer par expliquer comment est construite la variable $var.

    Sinon, il est possible d'écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $var = "SELECT * FROM schools WHERE teacher IN( 1, 2 ) AND student IN( 1, 2, 3 ) AND classroomId IN( 12 )";

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    En utilisant IN et des tableaux PHP c'est plus propre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $teacher = array(1,2);
    $student = array(1,2,3);
     
    $sql = 'SELECT * FROM schools WHERE teacher IN (' . implode(',', $teacher) . ') AND student IN ('  . implode(',', $student) . ') AND classroomId = 12';
    evidemment $teacher et $student sont construits dynamiquements
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. insérer et décaler des élèments dans une ArrayList
    Par biljava dans le forum Collection et Stream
    Réponses: 13
    Dernier message: 21/07/2011, 11h05
  2. insérer des élément dans une base de donné
    Par wiss20000 dans le forum JDBC
    Réponses: 5
    Dernier message: 01/03/2007, 15h49
  3. Supprimer des éléments dans une TreeView ?
    Par souch dans le forum Composants VCL
    Réponses: 4
    Dernier message: 16/09/2005, 13h20
  4. insérer des images dans une bd postgresql
    Par ephet dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 20/01/2004, 10h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo