Barre de recherche php et affichage

Résolu
LEMANIMAK84 -  
[Dal] Messages postés 6122 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Voilà j'ai configuré une barre de recherche puis je l'ai "connecté" à ma base de données. Le souci est que quand celle ci me renvoie les résultats d ma recherche cela se présente avec des caractères spéciaux dont j'aimerais m'en débarrasser

Array(
[0]=>
[Id]=1
[nom]=Gertrude
[Prenom]=Juliette etc...
D'une part et d'autre part disposer de façon plus élégantes les résultats.

Merci

Configuration: Android / Chrome 98.0.4758.87

4 réponses

  1. LeMANIMAK84
     
    <?php
    		$serveur = "localhost";
    		$login = "root";
    		$pass = "root";
    
    		 try{
    			$connexion = new PDO("mysql:host=$serveur;dbname=cours; charset = utf8",$login,$pass);
    			$connexion -> setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
    			if (isset($_POST['submit'])){
    				$str = $_POST['search'];
    				$requete = $connexion ->prepare("SELECT * FROM users WHERE nom='$str' ");
    			$requete-> execute();
    			$resultat = $requete->fetchAll(PDO::FETCH_ASSOC);
    			}
    			 
    			print_r($resultat);
    			 		}
    		catch(PDOException $e){
    			die('Echec de la connexion:'.$e ->getMessage());
    		}
    ?>
    
    0
    1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       
      Ok.
      Et donc, tu as toujours des problèmes de caractères spéciaux ?
      Tu as suivi tout ce qui était indiqué dans le lien que je t'ai donné ?
      0
      1. LEMANIMAK84 > jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention  
         
        Je crois que oui... j dédire qu'à l'affiche d'une recherche faite pas un utilisateur, les informations provenant de ma base de données soient l plus clairement retournées c'est à dire sans array(), sans de [nom] etc.. mais plutôt
        Nom prénom email âge
        Gertrude Juliette ***@*** 37
        0
  2. LeMANIMAK84
     
    j'ai pris en compte les différentes remarques mais l'affichage non voulu persiste:
    Array ( [0] => Array ( [Id] => 1 [nom] => Gertrude [prénom] => Juliette [mail] => ***@*** [age] => 37 [pays] => ...
    0
    1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       
      Je ne vois pas de caractère spéciaux dans ce que tu nous montres....
      Et si ça s'affiche comme ça, c'est parce que tu as utilisé un print_r
      À toi de boucler sur le résultat de ta requête pour en faire l'affichage souhaité..
      0
      1. LEMANIMAK84 > jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention  
         
        Puis je avoir un exemple ?
        0
      2. [Dal] Messages postés 6122 Date d'inscription   Statut Contributeur Dernière intervention   1 108 > LEMANIMAK84
         
        En fait, tu veux savoir comment parcourir le tableau (array) de résultats avec Php.

        Avec une boucle foreach tu peux parcourir chaque ligne. Pour chaque ligne, tu peux accéder aux champs souhaités et les présenter comme tu le veux.

        Par exemple :

        foreach ($resultat as $ligne) {
            echo $ligne['nom'] . " " . $ligne['prénom'] . ", " . $ligne['mail'] . ", " . $ligne['age'] . " ans<br />\n";
        }


        (non testé)
        0
  3. LEMANIMAK84
     
    Merci à toi j-45. Ça fonction donc je vais juste de mon côté peaufiner. Merci pour ta promptitude
    0
    1. [Dal] Messages postés 6122 Date d'inscription   Statut Contributeur Dernière intervention   1 108
       
      j-45 ?

      Enfin, le principal c'est que tu aies ta réponse
      0