OVH Cloud OVH Cloud

Variable JS vers php

4 réponses
Avatar
Jaxom
attention x-post

Bonjour, voici mon problème :

j'ai un formulaire avec un bouton 'submit'. Dans la méthode onclick de
ce bouton j'effectue un prompt d'une valeur que je voudrais tester dans
la page appelée.

J'ai défini un input type hidden dans ma form avec le nom 'duree'
lorsque je clique sur mon submit le prompt me demande de saisir une
durée et c'est cette valeur que je veux tester, en php, dans la page
chargée par le submit.

or la valeur que j'obtiens est toujours nulle. Comment faire ?



--
Jaxom

I tried sniffing coke once, but the ice cubes stuck in my nose

4 réponses

Avatar
O.L.
Jaxom a présenté l'énoncé suivant :
attention x-post

Bonjour, voici mon problème :

j'ai un formulaire avec un bouton 'submit'. Dans la méthode onclick de ce
bouton j'effectue un prompt d'une valeur que je voudrais tester dans la page
appelée.

J'ai défini un input type hidden dans ma form avec le nom 'duree' lorsque je
clique sur mon submit le prompt me demande de saisir une durée et c'est cette
valeur que je veux tester, en php, dans la page chargée par le submit.

or la valeur que j'obtiens est toujours nulle. Comment faire ?


Peux tu nous montrer ton code ?

Moi je verrais bien un truc ressemblant à ça :

<form action=script.php action=post>
<input type=hidden name=duree id=duree>
<input type=submit value="Envoyer"
onclick="document.getElementById('duree').value=prompt('Veuillez entrer
une durée :', 'valeur proposée par défaut');">
</form>

# script.php #

<?php
echo "Durée : ".$_POST['duree'];
?>

--
Olivier Ligny
Créateur web free-lance / www.cyber-tamtam.net

Avatar
ASM
attention x-post

Bonjour, voici mon problème :

j'ai un formulaire avec un bouton 'submit'. Dans la méthode onclick de
ce bouton j'effectue un prompt d'une valeur que je voudrais tester dans
la page appelée.


Mauvaise méthode, préférer le onsubmit du form.

J'ai défini un input type hidden dans ma form avec le nom 'duree'
lorsque je clique sur mon submit le prompt me demande de saisir une
durée et c'est cette valeur que je veux tester, en php, dans la page
chargée par le submit.

or la valeur que j'obtiens est toujours nulle. Comment faire ?


<form action="page.php"
onsubmit="var v = this.duree.value;
return (prompt('Indiquez la duree svp')==v)">
<input type=hidden name="duree" value="25">

si, au prompt, on annule ou on ne donne pas la bonne durée
hop ! pas d'envoi (pas de message de quoi qui va pô non plus :-/)


Le truc inverse (mettre à jour le hidden avant envoi) :

<form action="page.php"
onsubmit="var d = prompt('Indiquez la duree svp');
if(!d) { alert('Envoi annulé'); d = false; }
else { this.duree.value = d; d= true; }
return d;
">
<input type=hidden name="duree" value="">


--
Stephane Moriaux et son [moins] vieux Mac

Avatar
Jaxom
Jaxom a formulé la demande :

[snip]


Merci à tous les deux, j'ai préféré la méthode d'Olivier à celle de
Stéphane vu que j'ai plusieurs boutons submit sur la même page. Cà
marche nickel.


--
Jaxom

Fait un feu pour un homme et il aura chaud pour la journée. Mets le feu
à un homme et il aura chaud pour le restant de sa vie
Terry Pratchett

Avatar
ASM

Merci à tous les deux, j'ai préféré la méthode d'Olivier à celle de
Stéphane vu que j'ai plusieurs boutons submit sur la même page. Cà
marche nickel.


Tu aurais pu faire une adaptation des 2 :

<input type=submit value="Envoyer"
onclick="duree.value=prompt('Veuillez entrer une durée :', '');">

ou, pour être plus conforme :

<input type=submit value="Envoyer"
onclick="this.form.duree.value=prompt('Veuillez entrer une durée :', '');">

--
Stephane Moriaux et son [moins] vieux Mac