Permettre ma barre de recherche affiche avatar
Résolu/Fermé
A voir également:
- Permettre ma barre de recherche affiche avatar
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Avatar facebook - Guide
- Rechercher ou entrer l'adresse mm - recherche google - Guide
- Windows 11 barre des taches a gauche - Guide
2 réponses
yg_be
Messages postés
23426
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
13 janvier 2025
Ambassadeur
1 557
19 févr. 2018 à 22:53
19 févr. 2018 à 22:53
bonsoir, où se trouvent les photos des profils?
jordane45
Messages postés
38380
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 janvier 2025
4 727
Modifié le 20 févr. 2018 à 21:18
Modifié le 20 févr. 2018 à 21:18
Bonjour,
Quelques erreurs dans ton code...
Et quelques bonnes pratiques que tu devrais appliquer dès maintenant !
Voici
Déjà.. tu places le code de connexion à ta bdd dans un fichier à part que tu n'auras qu'à inclure dans tes autres pages
au lieu de le copier/coller partout sur ton site.
Le jour ou tu changes de BDD.. tu seras bon pour aller remodifier chacune de tes pages une par une !
Donc :
Puis dans ton code :
Quelques erreurs dans ton code...
Et quelques bonnes pratiques que tu devrais appliquer dès maintenant !
Voici
Déjà.. tu places le code de connexion à ta bdd dans un fichier à part que tu n'auras qu'à inclure dans tes autres pages
au lieu de le copier/coller partout sur ton site.
Le jour ou tu changes de BDD.. tu seras bon pour aller remodifier chacune de tes pages une par une !
Donc :
<?php //connexion à la bdd // Fichier : cnxbdd.php try{ $bdd = new PDO('mysql:host=localhost;dbname=rs;charset=utf8', 'root', ' '); $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); } catch(PDOException $e) { die('Erreur : ' . $e->getMessage()); } ?>
Puis dans ton code :
<?php //activation de l'affichage des erreurs PHP ! (A mettre au début de chacune de tes pages !! ) error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); //connexion à la bdd require_once "cnxbdd.php"; //récupération PROPRE des variables AVANT de les utiliser $searchq = !empty($_POST['search']) ? preg_replace ("#[^0-9a-z]#i","",$_POST['search']) : ''; if(isset ($_POST['search'])){ $sql = "SELECT * FROM utilisateurss WHERE Prenom LIKE '%$searchq%' OR NOM LIKE '%$searchq%' "; //pour CHAQUE requête mettre un bloc TRY/CATCH !! try{ $req = $bdd->prepare($sq); $req->execute(); //$count = $req->rowCount(); //le row COUNT est à abolir pour les requêtes SELECT ! (voir la doc de pdo ! ) // A la place : $resultat = $req->fetchAll(); $count = count($resultat); } catch(PDOException $e) { die('Erreur : ' . $e->getMessage()); } if($count == 0){ echo 'Auncun résultat pour ' .$searchq; }else { foreach($resultat as $row){ $Prenom = $row['Prenom']; $NOM = $row['NOM']; $id = $row['id']; $avatar = $row['avatar']; $output .= '<div class="utilisateurs">'; $output .= '<img src="/avatar/'.$avatar.'">'; $output .= '<span>'.$Prenom.' '.$NOM.'</span> '; $output .= '</div>'; } // on affiche le HTML une fois la couble terminée ! print ($output); }
jordane45
Messages postés
38380
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 janvier 2025
4 727
22 févr. 2018 à 14:05
22 févr. 2018 à 14:05
Car le chemin vers ton image n'est pas bonne....
Peux tu nous coller le code source de ta page (issue de ton navigateur : CTRL + U )
Peux tu nous coller le code source de ta page (issue de ton navigateur : CTRL + U )
martin
>
jordane45
Messages postés
38380
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 janvier 2025
22 févr. 2018 à 15:17
22 févr. 2018 à 15:17
C'est bon ça fonctionne merci. Je vous remercie. par contre, juste une petite précision pourquoi quand je fait une recherche je suis obliger de mettre soit le nom ou le prénom pour trouver la personne? je ne peux pas mettre le nom et prénom sinon ça dit aucun résultat
jordane45
Messages postés
38380
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 janvier 2025
4 727
>
martin
22 févr. 2018 à 15:52
22 févr. 2018 à 15:52
Tu fais une recherche sur deux champs séparés en BDD...
Si tu veux faire une recherche groupée... tu dois pouvoir faire :
Si tu veux faire une recherche groupée... tu dois pouvoir faire :
$sql = "SELECT * FROM utilisateurss WHERE Prenom LIKE '%$searchq%' OR NOM LIKE '%$searchq%' OR concat(NOM,' ',Prenom) LIKE '%$searchq%' OR concat(Prenom,' ',NOM) LIKE '%$searchq%' ";
20 févr. 2018 à 10:08
20 févr. 2018 à 10:37
est-ce le cas?
20 févr. 2018 à 12:20
20 févr. 2018 à 15:22
20 févr. 2018 à 20:27