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 :

Connaître le nom du champ dans lequel à été trouvé un mot clé. [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 2
    Par défaut Connaître le nom du champ dans lequel à été trouvé un mot clé.
    Bonjour, j'aurai besoin d'un petit coup de pousse pour avancer

    J’ai une table "ma_table" avec deux champs "non" et "pnon" dans lesquelles se trouve une liste de noms et de prénoms.
    Je désire faire une recherche d'un mot clé "quoi" dans ces deux champs avec comme résultat la ligne et surtout le nom du champ dans lequel le mot clé a été trouvé.

    En utilisant le petit bout de code suivant :

    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
    <?php
     
    $table = "ma_table";
    $quoi =  $_GET['quoi']; //  On récupère le mot clé introduit dans le formulaire
     
    if ($quoi != "")     //  Si le mot clé n'est pas vide alors on cherche
    		{
     
    		$result = mysql_query("SELECT * FROM $table WHERE nom LIKE '%$quoi%' OR pnom LIKE '%$quoi%'");
            // On sélectionne dans la table les deux champs où chercher le mot clé.
    		while($row = mysql_fetch_row($result))
    			{
    			echo "Nom : ".$row[1]."</br>";
    			echo "Prénom : ".$row[2]."</br>";
    			echo "Le mot clé : ".$quoi." a été trouvé dans le champ : ";
    			echo "????";
    			}
    		}
     
    ?>
    J'ai cherché un peut partout mais rien trouvé de concret.
    Sauf qu'il faudrait apparemment utiliser des fonctions comme:


    mysql_fetch_assoc() ou mysql_field_name()


    mais je n'ai pas réussi à les appliquer et je m'emmêle les pinceaux.

    Merci pour votre aide.

  2. #2
    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
    Par défaut
    Tu peux le faire avec fetch_row aussi mais c'est plus parlant avec fetch_assoc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    while($row = mysql_fetch_row($result))
    			{
                       if (strpos($row['1'],$choix)) {
                       // blablabla
                       }
                       elseif (strpos($row['2'],$choix)) {
                       // bliblblibli
                       }
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 2
    Par défaut
    Merci,

    Tout compte fait j’ai utilisé la fonction « strrpos() ». J’aurai préférer strripos(), mais elle n’est pas disponible sous php 4.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/01/2009, 15h04
  2. realiser une boucle sur un nom de champs dans un Etat
    Par stephanfromtoulouse dans le forum IHM
    Réponses: 2
    Dernier message: 08/09/2006, 23h09
  3. Réponses: 2
    Dernier message: 21/02/2006, 10h36
  4. Réponses: 7
    Dernier message: 04/11/2004, 12h20
  5. Nom de Champ dans une table pour utiliser For/Next
    Par Mulele dans le forum Access
    Réponses: 6
    Dernier message: 30/10/2004, 13h28

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