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
- Windows 11 barre des taches a gauche - Guide
- Égal barré ✓ - Forum Word
2 réponses
yg_be
Messages postés
23361
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
29 novembre 2024
Ambassadeur
1 556
19 févr. 2018 à 22:53
19 févr. 2018 à 22:53
bonsoir, où se trouvent les photos des profils?
jordane45
Messages postés
38319
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
30 novembre 2024
4 706
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
38319
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
30 novembre 2024
4 706
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
38319
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
30 novembre 2024
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
38319
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
30 novembre 2024
4 706
>
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