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 :

Aucun résultat après une recherche dans ma bdd


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2013
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bahamas

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2013
    Messages : 57
    Points : 35
    Points
    35
    Par défaut Aucun résultat après une recherche dans ma bdd
    Bonjour,
    Après avoir suivi une video en jquery pour vérifier si un membre existe ou non dans ma BDD, je rencontre un problème qui, je pense se situe au niveau de mon code PHP. Je pense qu'il ne parvient pas à aller dans ma BDD et compter le nombre d'entrées qui correspond à ma recherche.

    Dans mon code HTML au niveau du formulaire, j'ai bien un id"username" qui lui est bien placé. Je vous donnerai quand même le code au cas ou.

    Le fichier de connexion (en PDO dit en passant) ne pose pas de problème non plus, je l'utilise dans plusieurs pages.
    Il se situe dans le dossier parent alors que mes fichiers sont dans un autre dossier donc j'ai bien mis ../connection.php (la n'est pas le problème quoi)

    J'ai une table membres avec, entre autre, un champ pseudo.
    Je vais vous donnre tous mes codes car j'ai essayé toute la journée à résoudre mon problème et en vain.
    HTML:
    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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />		
    		<title>Swap-it.com</title>
        </head>
        <body>
    	<form action="post.php" method="post">
    		<label for="username">Destinataire: </label> 
    		<input type="text" id="username"/><span class="feedback"></span>
    	</form>
    	<script type='text/javascript' src='jquery.js'></script>
    	<script type='text/javascript' src='func.js'></script>
    	</body>
    </html>
    Jquery:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $(document).ready(function(){
    	$('#username').keyup(function(){
    	var username = $('#username').val();
    	if(username != ""){
    		$.post('post.php',{username:username},function(data){
    		$('.feedback').text('data');	
    	});
    	} else {
    		$('.feedback').text('Veuillez inscrire un membre');
    	}
    	});
     
    });
    connection.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <?php
    try
    {
        $bdd = new PDO('mysql:host=localhost;dbname=trocevol', 'root', '', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
    	//mysql_query("SET NAMES UTF8");
    }
    catch(Exception $e)
    {
            die('Erreur : '.$e->getMessage());
    }
     
    ?>
    Et mon post.php:
    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
     
    <?php 
    	include '../connection.php';	
    	//Partie pour le jquery
    	if(isset($_POST['username']) && !empty($_POST['username'])){
    		$username=$_POST['username'];
    		$query=$bdd->query("SELECT * FROM membres WHERE pseudo ="'.$username.'" ");
    		$rows= $query->rowCount();
    		if($rows == 1){
    			echo 'Ce membre n\' existe pas';
    		} else {
    			echo 'Dispo';
    		}
    	}
    ?>
    La seule chose qui me laisse perplex c'est ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE pseudo ="'.$username.'" ");
    mais j'ai essayé de plusieurs manière ...

    J'ai essayé de faire la même chose avec une requête préparé mais je n'ai aucun résultat non plus.
    vs requête préparé:
    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
     
    <?php 
    	include '../connection.php';	
    	//Partie pour le jquery
    	if(isset($_POST['username']) && !empty($_POST['username'])){
    		$username=$_POST['username'];
    		$query = $bdd->prepare("SELECT * FROM membres WHERE pseudo = ?");
    		if ($query->execute(array($username))) {
    			while ($rows = $query->fetch()) {
    				if($rows == 1){
    					echo 'Ce membre n\' existe pas';
    				} else {
    					echo 'Dispo';
    				}
    			}
    		}
    	}
    ?>

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2013
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bahamas

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2013
    Messages : 57
    Points : 35
    Points
    35
    Par défaut
    Il y a du nouveau, je suis un peu gêné de le dire mais étant donné que je test mes pages en local,

    je lançais ma page directement depuis l'explorateur windows mais vu qu'il y a du php je dois le faire depuis mon serveur local (Wamp chez moi)

    Du coup maintenant la valeur qui m'est renvoyé c'est "data" que le pseudo existe ou non.

  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
    Tu ne nous as pas dit ce que tu obtenais.

    Déjà oublie la version non préparée.
    Dans la version préparée, tu as oublié le rowcount(). Mais bon rowcount() est déconseillé, fait plutôt une requête SELECT COUNT directement.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2013
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bahamas

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2013
    Messages : 57
    Points : 35
    Points
    35
    Par défaut
    J'ai déjà essayé avec un SELECT COUNT mais j'ai toujours le resultat "data"
    Voici mon code:
    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
     
    <?php 
    	include '../connection.php';	
    	//Partie pour le jquery
    	$username = $_POST['username'];
    	$query = $bdd->prepare('SELECT COUNT(*) as nb FROM membres WHERE pseudo = ?');
    	if ($query == false) {
    	  echo 'Erreur prepare';
    	  print_r($bdd->errorInfo());
    	  die();
    	}
     
    	$res = $query->execute(array($username));
    	if ($res == false) {
    	  echo 'Erreur execute';
    	  print_r($query->errorInfo());
    	  die();
    	}
    	$row = $query->fetch();
    	if ($row['nb'] > 0) {
    	  echo 'Ce user est déjà utilisé';
    	} else {
    	  echo 'Ce user est dispo';
    	}
    ?>

  5. #5
    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
    Comment ça "data" ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2013
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bahamas

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2013
    Messages : 57
    Points : 35
    Points
    35
    Par défaut
    J'ai rajouté un bouton submit à mon texte html. La bonne nouvelle, c'est que une fois la page post.php lancé il parvient à me dire si le pseudo est disponible ou non mais le but de tout ca, c'est qu'il n'y ait pas de bouton submit et qu'il m'affiche instantanément et dynamiquement si le user est disponible ou non alors qu'ici il affiche simple "data"

  7. #7
    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
    Dans ton Javascript tu as mis la chaine 'data'
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2013
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bahamas

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2013
    Messages : 57
    Points : 35
    Points
    35
    Par défaut
    Et bien un grand merci !!!!
    C'était tout bête et logique, un peu déçu de ne pas l'avoir trouvé moi même mais un grand merci !

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

Discussions similaires

  1. [XL-2003] Afficher les résultats d'une recherche dans une listbox
    Par sword56 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 31/03/2012, 20h24
  2. Afficher les résultats d'une recherche dans un TREEVIEW
    Par buddyMick dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/09/2010, 22h53
  3. Réponses: 1
    Dernier message: 22/06/2009, 15h19
  4. [MySQL] affichage des résultats d'une recherche dans la base
    Par dolf13 dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 21/11/2006, 17h18
  5. Réponses: 7
    Dernier message: 21/09/2006, 08h44

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