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 :

Rechercher avec premier lettre d'un nom


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Points : 183
    Points
    183
    Par défaut Rechercher avec premier lettre d'un nom
    Bonjour le forum,


    Mon PB est de lancer une recherche sur une partie d'un nom present dans un champ de ma BDD afin d'affihcer tous les noms commençant par les lettres saisies.



    J'ai actuellement une bdd trés trés remplie.

    Quand j'affiche mon select sur ma page PHP, je limite mon affichage a tant par page.

    Tout fonctionne trés bien , cependant, j'aimerai rajouter un champ (formulaire avec imput) qui me permet de saisir un début de nom, (premiere lettre, ou premiereS lettreS) et cliquer sur un lien ou bouton pour faire apparaitre une liste de nom présents dans ma bdd en limitant ces noms aux lettres saisies dans mon champ du form.

    Pour faire simple je peux récupérer ça sous forme de variable dans mon url et en faire une condition de plus dans mon select si il le faut.

    Pour l'instant je cale, car je parviens a faire une recherche que sur l'integralité d'un nom et non une partie, si qulqu'un aurait la grande gentillesse de m'aider s'il vous plait, il serait bienvenu.

    Bonne journée

  2. #2
    Nouveau membre du Club
    Inscrit en
    Septembre 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 28
    Points : 32
    Points
    32
    Par défaut
    salut

    le mot clé sql est LIKE
    exemple : select nom from personne where nom like 'chaine_input%'

    donc en php
    $sql = "select nom from personne where nom like '".$champInput."%'";

    $champInput étant la valeur que tu saisie
    si tu met le '%' au début (sans le mettre à la fin) tu as les nom finissant par le 'nom'

    si tu le met quà la fin, tu as les noms commencants par le 'nm' (que tu as saisie dans ton formulaire )

    si tu met LIKE '%nom%' tu as les nom commencant, qui finissent, et qui contiennent ta chaine

    amicalement

    matt

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Points : 183
    Points
    183
    Par défaut
    C'est parfait je te remercie doublement car, je veins effectivement de découvrir cette fonction en faisant une recherche sur le forum .

    Désolés de ce derangement, d'habitude je commence toujours par faire une recherche.

    Merci et bonne journée

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Points : 183
    Points
    183
    Par défaut
    J'ai quand meme un petit souci, decidement je post un peu trop vite aujourd'hui.

    OK pour la fonction LIKE, je comprends son fonctionnement.

    Mais mon PB vient du fait que je dois saisir une partie du nom dans la meme page que l'affichage des noms, donc je pense qu'il faille que je passe par un form, mais je ne parviens pas a envoyer l'info dans l'url.

    Par contre qd je force l'url je récupére bien l'info et le script marche.

    En clair, d'habitude, j'ai une page formulaire et je valide en ouvrant une autre page, mais la c'est la meme.

    Quelqu'un peut ma'ider s'il vous plait.

    Je rappel que je passe bien la variable dans l'url qd je clique sur un lien, mais quand le saisir un nom et que je clique sur valider, rien ne fonctionne.

    MErci

  5. #5
    Nouveau membre du Club
    Inscrit en
    Septembre 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 28
    Points : 32
    Points
    32
    Par défaut
    re

    exemple :
    tu postes sur la meme page (quon va appeler index.php)
    GET si tu récupère le champ saisie par l'URL
    formulaire de saisie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <form method="get" action="index.php" />
     
    <input type="text" name="nom" />
    <input type="submit" value="valider" />
     
    </form>

    A la suite de ce code tu fais ton code php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    //si ta le nom dans l'URL
    //le if est important sinon l'interpréteur php va te dire qu'il ne connais pas $_GET["nom"]
    if(isset($_GET["nom"]){
     tu fais ta requete sql normalement et tu liste tes résultats
    }
    amicalement

    matt

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Points : 183
    Points
    183
    Par défaut
    Merci mais cela ne marche pas, j'ai du adapter pour faire fonctionner mon script.

    J'ai simplement fait un if sur la valeur de la variable directement sans passer par le isset et maintenant cela foncitonne.

    Aller comprendre.

    en tout cas merci et bonne soirée

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

Discussions similaires

  1. [XL-2007] Trie colonne avec premiere lettre en tête
    Par apdf1 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 16/11/2011, 15h11
  2. recherche le nom qui commence avec une lettre donnee
    Par kroma23 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 27/05/2011, 12h13
  3. [AC-2003] Recherche avec premières lettres
    Par l-dag dans le forum IHM
    Réponses: 7
    Dernier message: 22/07/2009, 14h12
  4. procedure avec seulement premiere lettre
    Par wfirefox dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 16/07/2007, 16h00
  5. recherche sur les premières lettres
    Par mogur dans le forum Requêtes
    Réponses: 2
    Dernier message: 23/10/2006, 09h06

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