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

PHP & Base de données Discussion :

requête sql dans une fonction


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2011
    Messages : 20
    Points : 11
    Points
    11
    Par défaut requête sql dans une fonction
    Bonjour, j'ai une petite question.

    Pourquoi ce premier code fonctionne parfaitement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
       //reception du message
       if(isset($_POST['phrase']) AND $_POST['phrase'] != "" ){
     
          $phrase = $_POST['phrase'];
          $intensitedumessage = 40;
          $auteur="humain";
          //insertion du message dans la liste des phrases
          $ins=$bdd->prepare('INSERT INTO phrases (contenu,auteur) VALUES (?,?) ');
          $ins->execute(array($phrase, $auteur));
     
          //envoyer chaque lettre de la phrase dans la fonction stimulus
          while($phrase != ""){
             $recu = substr($phrase,0,1);
             $sens = "lecture";
             $intensite = $intensitedumessage;
     
             if($sens == "lecture"){
             echo($recu . " ");
             //est-ce que ce recu est connu ?
             $iddurecu = 0 ;
             echo("123");
             $monades = $bdd->query("SELECT * FROM monades");
             echo("456");
             while ($monade = $monades->fetch())
             {
                echo("yo");
                if($monade['contenu'] == $recu){
                   $iddurecu = $monade['id'];
                }
                else{
                   echo("berk");
                }
     
             }
             echo($iddurecu);
             if($iddurecu == 0){ //le recu est inconnu donc on l'ajoute
                $ins=$bdd->prepare('INSERT INTO monades (contenu) VALUES (?) ');
                $ins->execute(array($recu));
             }
             //puis on
          }
             $phrase = substr($phrase,1);
          }
       }
    Alors que celui-ci ne fonctionne pas et s'arrête à écho("123") :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
       //fonction stimulus
       function stimulus($recu,$sens,$intensite){
          if($sens == "lecture"){
             echo($recu . " ");
             //est-ce que ce recu est connu ?
             $iddurecu = 0 ;
             echo("123");
             $monades = $bdd->query("SELECT * FROM monades");
             echo("456");
             while ($monade = $monades->fetch())
             {
                echo("yo");
                if($monade['contenu'] == $recu){
                   $iddurecu = $monade['id'];
                }
                else{
                   echo("berk");
                }
     
             }
             echo($iddurecu);
             if($iddurecu == 0){ //le recu est inconnu donc on l'ajoute
                $ins=$bdd->prepare('INSERT INTO monades (contenu) VALUES (?) ');
                $ins->execute(array($recu));
             }
     
          }
       }
     
     
       //reception du message
       if(isset($_POST['phrase']) AND $_POST['phrase'] != "" ){
     
          $phrase = $_POST['phrase'];
          $intensitedumessage = 40;
          $auteur="humain";
          //insertion du message dans la liste des phrases
          $ins=$bdd->prepare('INSERT INTO phrases (contenu,auteur) VALUES (?,?) ');
          $ins->execute(array($phrase, $auteur));
     
          //envoyer chaque lettre de la phrase dans la fonction stimulus
          while($phrase != ""){
             stimulus( substr($phrase,0,1) , "lecture" , $intensitedumessage );
             $phrase = substr($phrase,1);
          }
       }
    Il est interdit de faire une requête sql à l'intérieur d'une fonction ?
    C'est très bizarre

  2. #2
    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
    $bdd n'existe pas dans ta fonction.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2011
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    En effet
    J'ai tendance à oublier que la bdd est une variable.

    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Requête sql dans une fonction php
    Par profilien dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 23/03/2015, 08h02
  2. [PHP 5.0] Exécuter une requête SQL dans une fonction Javascript
    Par PrinceMaster77 dans le forum Langage
    Réponses: 13
    Dernier message: 08/07/2011, 04h53
  3. erreur dans une requête sql dans une fonction php
    Par frboyer dans le forum Langage
    Réponses: 3
    Dernier message: 07/04/2009, 13h37
  4. Plusieurs requêtes T-SQL dans une fonction
    Par ellix86 dans le forum Développement
    Réponses: 3
    Dernier message: 26/02/2009, 16h48
  5. Requête sql dans une clause Where
    Par PrinceMaster77 dans le forum Requêtes
    Réponses: 5
    Dernier message: 26/07/2006, 11h30

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