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

HTML Discussion :

Formulaire avec 2 validations possibles


Sujet :

HTML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 36
    Par défaut Formulaire avec 2 validations possibles
    Bonjour,

    J'ai eu beau chercher, je n'ai pas réussi à trouver de réponse à mon problème (ou alors je ne sais pas chercher, c'est possible...).

    Sur ma première page, j'ai un formulaire qui contient une liste de produits. J'en sélectionne autant que je veux et j'ai alors deux possibilités:
    1/ Bouton "Modifier" et j'envoi, par la méthode post, les produits sélectionnés à la page modifier.php
    2/ Bouton "Supprimer" et j'envoi les données par la méthode post à la page supprimer.php
    La seule astuce que j'ai trouvé pour avoir 2 options d'envoi, c'est celle-là:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <form method="post" action="rechercherproduit.php" name="form_affichage">
    ...
    <input type="submit" name="modifier" value="Modifier" />
    <input type="submit" name="supprimer" value="Supprimer" />
    qui renvoi donc sur la page rechercherproduit.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if ($_POST['modifier']!="") {
    $id_prod=$_POST['produits'];
        header("Location: modifierproduit.php");
    }
    else {
    $id_prod=$_POST['produits'];
        header("Location: conf_supp_prod.php");
    }
    Mais a ma connaissance (très limitée je le reconnais), on ne peux passer de données par la méthode post sans formulaire...
    Comment puis-je donc faire pour récupérer $id_prod sur ma page modifier.php par la méthode post ?

    Merci beaucoup pour vos indications.

  2. #2
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    Salut !

    le mieux serait de faire directement le traitement au lieu de faire une redirection
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 012
    Par défaut
    +1

    mais si tu veux absolument avoir deux pages différentes, tu as deux solutions :

    primo, avec les sessions : tu enregistres id_prod dans une variable de session, comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_SESSION['id_prod']=$_POST['produits'];
    et les variables de session restent même en changeant de page (c'est d'ailleurs leur réel intérêt), et à mon avis la meilleure solution (non, la meilleure solution c'est de faire le traitement dans la même page, mais bon)

    secundo, avec un lien par GET, comme suit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Location: modifierproduit.php?id_prod=$_POST['produits']
    bon il faut mettre les guillemets au bon endroit, c'est juste le principe. honnêtement, j'ai déjà fait cela avec des liens, mais jamais avec un header, donc je ne suis pas sûr que cela fonctionne. tu appelles dans ta page modifierproduit par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $id_prod = $_GET['id_prod']

  4. #4
    Membre Expert
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Par défaut
    Bonjour,

    Une autre idée :

    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
     
    <script language="javascript">
    function Modifier()
       {
       document.form_affichage.action = "Modifier.php";
       document.form_affichage.submit();
       }
     
    function Supprimer()
       {
       document.form_affichage.action = "Supprimer.php";
       document.form_affichage.submit();
       }
    </script>
    .....
    <form method="post" action="" name="form_affichage">
    ...
    <input type="button" onclick="Modifier()" name="modifier" value="Modifier" />
    <input type="button" onclick="Supprimer()" name="supprimer" value="Supprimer" />

  5. #5
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    @pc75 : et si JS est desactivé : c'est mort ^^
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 36
    Par défaut
    Merci à tous !
    Je vais essayer la méthode à pc75. C'est du javascript mais ça pose pas de problème, c'est uniquement un formulaire pour la partie administration...
    Pour le passage par la méthode Get, j'avais déjà essayé, mais j'ai un autre problème qui se pose.
    Comme je peux passer plusieurs produits,
    $_POST[produits] peut être un tableau ou non.
    En plus, je fais déjà appel à ma page supprimer.php depuis une autre page, et supprimer.php récupère déjà les données par la méthode POST. J'avais essayé aussi de mettre un $_REQUEST dans supprimer.php, mais ça a pas l'air de bien gérer le get et post avec soit un tableau soit une seule valeur...
    C'est pour ça que le javascript me semble plus approprié. J'essai ce soir pour voir.

  7. #7
    Membre Expert
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Par défaut
    Re,

    Citation Envoyé par Swoög
    @pc75 : et si JS est desactivé : c'est mort ^^
    Je ne suis pas un pro du javascript, mais on peut détecter si le javascript est désactivé et dans ce cas, prévenir le visiteur que l'appli nécessite son activation non ?

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/07/2007, 17h10
  2. [Javascript] Validation formulaire avec ENTREE
    Par titalex dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/06/2006, 16h37
  3. Réponses: 6
    Dernier message: 03/04/2006, 09h42
  4. Pb validation formulaire avec checkbox
    Par wolfe dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/12/2005, 08h50
  5. Réponses: 6
    Dernier message: 05/07/2005, 16h33

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