[Messagerie] function pseudo_incorrect en pdo

Résolu
Bonjour,

Sachant que le code mysl_ de cette function est :
<?php 
//la function qui va nous permettre de verifier si le pseudo existe et si la personne n'essaye pas de s'auto envoyer un message

function pseudo_incorrect(){
{
  $query = mysql_query(""
  SELECT COUNT (pseudo) FROM utilisateurs WHERE pseudo= '{$_GET['pseudo']}'  AND pseudo != '{$_SESSION['pseudo']}'  
  return mysql_result($query,0);
}


qu'est qui ne va pas dans mon code svp ?
<?php 
//la function qui va nous permettre de verifier si le pseudo existe et si la personne n'essaye pas de s'auto envoyer un message

function pseudo_incorrect(){
 global $bdd;
 $result=0;
 //Variables
  $pseudo_session = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;
  $pseudo_get = isset($_GET['pseudo'])?$_GET['pseudo']:NULL;

 if($pseudo_get){
  $sql = "SELECT COUNT(pseudo) as NB
         FROM utilisateurs
         WHERE pseudo = :pseudo_get
   AND pseudo != :pseudo_session";
 
   // je place les  params dans une variable avant de l'utiliser :
  $params = array(':session_pseudo' =>$pseudo_session , ':get_pseudo' => $pseudo_get );
  try{
    $query = $bdd->prepare($sql);
    $query ->execute($params); 
    $req= $query->fetchall();
    
   $result= count($req)>0 ? $req[0]['NB']:0;
    
   }catch(Exception $e) {
     echo "<br>ERREUR ! ".$e->getMessage()."<br>";
     echo "<br>params : <br>";
     print_r($params);
   }
 } // Fin du  if($pseudo_session)
 // le return
 return $result;
}


Merci d'avance :) ceci rentre dans le cadre de la messagerie, qui est la dernière étape de mon site ^^

2 réponses

  1. As-tu un message d'erreur ?
    1. non mais quand je cliique sur "envoyer un message" je ne suis pas redirgé depuis que j'ai rajouté cette function, ça veut dire qu'elle n'est pas au point
  2. Modérateur
    ....ta requête et celle d'origine ne sont pas pareil... Regardes bien !
    1. suis-je bête ! j'ai corrigé le "FROM" mais ça ne marche tjr pas
    2. Ces variables sont identiques ...

      $pseudo_get = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;
       $pseudo_session = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;
    3. @hharchi9c'est corrigé mais ça ne marche tjr pas!
    4. ta requête est toujours différente de la première...
    5. @hharchi9j'ai corrigé aussi la negation :
       if($pseudo_get){
        $sql = "SELECT COUNT(pseudo) as NB
               FROM utilisateurs
               WHERE pseudo = :pseudo_get
      		 AND pseudo != :pseudo_session";