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 :

[Conception] Boucle select en autocompletion sans "SELECT"


Sujet :

PHP & Base de données

  1. #1
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut [Conception] Boucle select en autocompletion sans "SELECT"
    Bonjour,

    Dans un script php d'autocompletion, j'aimerai savoir comment récupérer la valeur de la ligne choisi si on ne met pas de balise "SELECT"

    Voici le script :

    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
    21
    22
    23
    24
    header('Content-Type: text/xml;charset=utf-8');
    echo(utf8_encode("<?xml version='1.0' encoding='UTF-8' ?><options>"));
     
    if (isset($_GET['debut'])) {
        $debut = utf8_decode($_GET['debut']);
    } else {
        $debut = "";
    }
    $debut = strtolower($debut);
    $MAX_RETURN = 10;
    $i = 0;
    // Description de la requête de recherche de la table
    $req = "SELECT DISTINCT id_maj,maj_nom, maj_prenom FROM ".$prefixe_table."`maj_etat_civil` WHERE maj_nom like '$debut%' AND id_trt > 0 AND id_trt < 5 ORDER BY maj_nom";
    $result=mysql_query($req);
        while ($row = mysql_fetch_array($result, MYSQL_NUM)) 
        {
    //        if ($i<$MAX_RETURN && substr($row[1], 0, strlen($debut))==$debut)
    		if ($i<$MAX_RETURN) 
            {      
                echo "<option>$row[1] $row[2]</option>";
                $i++;
            }
        }
    echo("</options>");
    J'aimerai si possible, ne pas mettre de "select".

    Merci d'avance

  2. #2
    Membre expérimenté Avatar de Hug0_76
    Profil pro
    Inscrit en
    Août 2006
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 292
    Par défaut
    Salut,

    est ce que tu as essayé de transmettre ta valeur selectionné comme ceci:

    <option onFocus='transmettre(valeur)'>$row[1] $row[2]</option>.

    la fonction (JS) transmettre va sauvegarder ta valeur et puis avec un autre traitement tu récupères cette même valeur?!
    Tu vois ce que je veux dire ou pas?

    A pars comme ca je ne vois vraiment pas comment faire, je suppose que la fonction de selection d'index selectionné de JS ne doit pas marcher?

  3. #3
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut
    Je viens seulement de recevoir ton post, c'est étrange comme lenteur.

    Bon, effectivement je peux faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <option onFocus='transmettre($row[0])'>$row[1] $row[2]</option>
    Je suppose que ce n'est pas "transmettre" qui doit être mis ici, mes plutot DocumentId etc..

    Ensuite dans mon javascript pour récupérer la donnée, je ne vois pas comment faire.

  4. #4
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut
    Bonjour,

    Je n'arrive toujours pas à récupérer ma valeur de mon autocompletion dans mon formulaire, je n'ai pas beaucoup bougé.

    J'ai compris qu'il fallat au travers de mon JS récupérer la valeur de mon autocompletion, mais je ne vois pas comment.


    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
    21
    22
    23
    24
    header('Content-Type: text/xml;charset=utf-8');
    echo(utf8_encode("<?xml version='1.0' encoding='UTF-8' ?><options>"));
     
    if (isset($_GET['debut'])) {
        $debut = utf8_decode($_GET['debut']);
    } else {
        $debut = "";
    }
    $debut = strtolower($debut);
    $MAX_RETURN = 10;
    $i = 0;
    // Description de la requête de recherche de la table
    $req = "SELECT DISTINCT id_maj,maj_nom, maj_prenom FROM ".$prefixe_table."`maj_etat_civil` WHERE maj_nom like '$debut%' AND id_trt > 0 AND id_trt < 5 ORDER BY maj_nom";
    $result=mysql_query($req);
        while ($row = mysql_fetch_array($result, MYSQL_NUM)) 
        {
    //        if ($i<$MAX_RETURN && substr($row[1], 0, strlen($debut))==$debut)
    		if ($i<$MAX_RETURN) 
            {      
                 echo "<option name='id_maj' value='".$row[0]."'>$row[1] $row[2]</option>";
                $i++;
            }
        }
    echo("</options>");
    C'est la valeur de que je veux récupérer dna smon formulaire ici dans la le champ name :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" name="id_maj" id="id_maj" autocomplete="off" >
    J'utilise le script du tuto
    qui fonctionne très bien pour l'autocompletion.

    Que dois-je faire ?

  5. #5
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut
    Bon, voila la soluce est de ne pas ré-inventer le fil à couper le js quand on en a pas les connaissances.

    Voila il faut allez ici et tout va mieux, l'autocomplete c'est simple, ben y a pas mieux.

    Merci à tous pour votre aide.

    Je vais jeter tout mon code déjà fait (juste le js)

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

Discussions similaires

  1. [T-SQL] Boucle sur les resultats d'un SELECT sans CURSOR
    Par la drogue c'est mal dans le forum Sybase
    Réponses: 1
    Dernier message: 16/06/2008, 11h19
  2. Réponses: 3
    Dernier message: 06/06/2007, 19h47
  3. [Conception] comment recupérer la valeur d'un select
    Par arno1977 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 13/06/2006, 14h09

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