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

Langage PHP Discussion :

Recuperer valeur d'un champs input


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 69
    Points : 38
    Points
    38
    Par défaut Recuperer valeur d'un champs input
    Bonjour,


    Voici un visuel de mon tableau (html / php)

    Nom : erreurAff.PNG
Affichages : 1522
Taille : 2,9 Ko

    Si vous avez une idée, comment je peux récupérer la valeur "105" en cliquant sur le bouton modifier?

    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
    25
    26
    27
    28
    29
    30
     
    for ($index = $premiere_entree; $index < $premiere_entree+$messages_par_page; $index++) 
    {
        foreach ($unserAdresse->getArrUrl() as $cle => $arr1 )
        {
          if ($cle == $index) 
          {
     
            foreach ($arr1 as $cle2 => $arr2)
    	{
    	 echo"<tr>";	
     
             foreach ($arr2 as $cle3 => $arr3)
    	 {
     
                if ($cle3 != "idUrl" ) 
    	    {
    	        echo "<td><input type='text' name='UrlIns'  value='$arr3'>    /input></td> ";
                }
    	    else
    	    {
    	        echo "<td><input type='text' name='idUrl'  value='$arr3'></input></td> ";
                }
    	}
    echo "<td colspan='2'><input type='submit'  name='tb_mod'  id='tb_mod' onClick='this.form.nbUrl.value = this.form.idUrl.value;' value=''/><input type='submit' name='tb_sup' id='tb_sup' value=''></td>";
    echo"</tr>";
            }
         }		
      }
    }
    Merci d'avance,

  2. #2
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Salut,
    Met tes balises input dans un <form> </form>

  3. #3
    Nouveau membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 69
    Points : 38
    Points
    38
    Par défaut
    Bonjour guigo,

    Tu me dis de déclarer un formulaire pour chaque input?

    Quel sera l'avantage?

  4. #4
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    tu as deux possibilite :

    - form pour chaque ligne, a ce moment la tu recupere que les input d'une ligne.

    -un form globale --> dans ce cas tu peux faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    <form>
    for(...)
         <input name="nom_".$i
     
    </form
    ensuite tu peux recuperer la bonne ligne avec un explode("_", nom)

  5. #5
    Nouveau membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 69
    Points : 38
    Points
    38
    Par défaut
    Merci, le "form globale" me conviens mieux

    Mais le vrai problème c'est de savoir comment identifier la cellule "idUrl " de la ligne où l'utilisateur clique sur modifier.

    Autrement dit, ce que je souhaite, c'est que l'utilisateur puisse modifier la ligne qu'il veut.


    -------------------------------
    01 | google.Fr | clique modifier |
    -------------------------------------
    02 | developpez.com | clique modifier |
    --------------------------------------
    (cf l'image dans le premier post).

  6. #6
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Meme si sementiquement c'est pas tres beau
    si tu met un bouton type submit sur chaque ligne tu vera laquelle a ete modif....

  7. #7
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Points : 7 503
    Points
    7 503
    Par défaut
    j'utiliserais plutot un type=image comme ça tu pourra mettre ton image de croix rouge pour la modification.

    par contre ma question, on peut modifier plusieurs ligne à la fois dans ton tableau? par ce que là la solution proposer ne permet que de faire une seule modification de ligne à la fois.

  8. #8
    Nouveau membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 69
    Points : 38
    Points
    38
    Par défaut
    Bonjour Vil'Coyote,
    Oui je propose aux utilisateurs de modifier une ligne à la fois.
    Je ne vois pas de quoi tu parles avec le type image ? Les boutons modifier et supprimer fonctionnent bien. J'ai un test dessu.

    Bonjour Guigo,
    En effet sur chaque ligne j'ai un bouton modifier et supprimer. Mais je n'arrive pas pour autant à savoir quelle ligne a été cliquée.

    Je pense que vous connaissez l'interface de phpMyAdmin. Lorsqu'on affiche les tables, on a le choix pour chaque ligne de la modifier ou supprimer. J'ai besoin de ce même principe en fait

  9. #9
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Sincerement si tu veux vraiement modifier ligne par ligne le plus simple est de faire un formulaire par ligne...
    Si tu ne veux pas cette technique alors il faut que tu puisse "reconnaitre" le submit cliqué...
    ex
    <input type="submit" name="Mod_".$key style="url(./img/monImg.jpg)" value="" />

  10. #10
    Nouveau membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 69
    Points : 38
    Points
    38
    Par défaut
    Voila, j'avais testé cette façon de faire, mais lors du controle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if (isset($_POST[" ?? "]))
        {}
    Comment je peux recuperer la variable vue quelle aura une valeur que je connais pas?

    J'avais tester de couper la chaine :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if((substr($key, 0, 3)) == "mod" )
    {}
    Mais il me foudrai un truc dans le genre :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if (isset(substr($_POST[" ?? "]), 0, 3)) == "mod"))
        {}
    Et ça pique les yx...

  11. #11
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Dans notre cas nous n'avons pas besoins de la value mais du name de l'input.
    Note que le name de notre input contient la cle de la ligne a modifier :-) (valeur apres le _ )


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    foreach($_POST as $K=>$V){
     
        if((substr($key, 0, 3)) == "mod" )  //ou avec un explode("_",$K);
     
    }

  12. #12
    Nouveau membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 69
    Points : 38
    Points
    38
    Par défaut
    Impec

    Alors j'pourrais pas dire que c'est le code le plus optimisé mais ça tiendra un moment :
    -Envoie des données :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    echo "<td><input type='submit' name='tb_mod$idUrlSup' id='tb_mod' value=''><input type='submit' name='tb_sup$idUrlSup' id='tb_sup' value=''></td>";
    -Recuperer l'id une fois le bouton cliqué
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    foreach($_POST as $K=>$V){
     
    	    if((substr($K, 0, 6)) == "tb_sup" ){
    	         echo substr($K, 6); //Retourne l'id.
    	    }
    	}
    Merci à vous !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/06/2015, 18h40
  2. recuperer la valeur d'un champ input zend form
    Par amyamou dans le forum Zend Framework
    Réponses: 2
    Dernier message: 07/08/2011, 17h24
  3. pb de recuperation valeur dans un champ texte
    Par kikou33 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 14/06/2005, 11h43
  4. Réponses: 10
    Dernier message: 10/05/2005, 11h35
  5. comment recuperer deux valeurs de deux champs input
    Par trialrofr dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/02/2005, 22h08

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