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:
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:
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:
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:
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:
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:
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';
}
}
}
}
?> |