bouton image submit PHP

Eléphant du PHP | 183 Messages

15 mars 2007, 19:45

bonjour a tous,
je suis en train de faire un formaulaire d'envois de mial de base..
probleme c'est qu'avec un bouton de base submit, ca fonctionne mais pas avec mon beau bouton graphique, mon script php ne reçoit plus le $_POST ["envoyer"] ...
voici mon code =>
<input type="image" src="images/envoyer.gif" onclick="submit" id="envoyer" onMouseOver="this.src='images/envoyer2.gif'" onMouseOut="this.src='images/envoyer.gif'">

ViPHP
ViPHP | 3607 Messages

15 mars 2007, 19:51

c'est parce que le onClick est mauvais, il faut faire comme ceci:
<form id="monform" .... >
<input type="button" onclick="document.getElementById('monform').submit();" ..... />
</form>

Eléphant du PHP | 183 Messages

15 mars 2007, 19:58

Désolé ça ne foncitonne pas plus .

ViPHP
ViPHP | 3607 Messages

15 mars 2007, 20:07

montre moi le code complet pour voir...

Eléphant du PHP | 183 Messages

15 mars 2007, 20:13

ok
<form method="POST" action="contact.php">
<span class="Style15">Objet :</span><br>
<input name="objet" type="text" dir="ltr" size="60" maxlength="60"><br>
<span class="Style15">Votre message :</span><br>
<textarea name="message" rows="3" dir="ltr" cols="57"></textarea><br>
<input type="image" src="images/envoyer.gif" onclick="submit" name="envoyer" onMouseOver="this.src='images/envoyer2.gif'" onMouseOut="this.src='images/envoyer.gif'">
<input type="submit" name="envoyer" value="envoyer">
</form>

Eléphant du PHP | 183 Messages

15 mars 2007, 20:14

le 2eme imput submit c'est pour le test qui fonctionne d'ailleur mais pas celui en type image...

ViPHP
ViPHP | 3607 Messages

15 mars 2007, 20:15

je n'y vois les modifications que je t'ai proposé... ?

Eléphant du PHP | 183 Messages

15 mars 2007, 20:16

ba deja faite mais comme ça n'a pas resolus le probleme j'ai remis comme j'ai fait au debut :-)

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

15 mars 2007, 20:18

c'est parce que le onClick est mauvais, il faut faire comme ceci:
<form id="monform" .... >
<input type="button" onclick="document.getElementById('monform').submit();" ..... />
</form>
Pas vraiment... onclick est mauvais pour un événement qui devrait se déclencher sur validation du formulaire car confusant en cas de touche "entrée".

Tout événement de ce type doit donc se trouver dans la balise <form> avec un événement "onsubmit".

Le type image fonctionne tout comme un type submit donc pas besoin de javascript pour valider.

Pour revenir au souci exécute ce bout de code après validation pour vérifier la syntaxe des données à récupérer ( $_POST ["envoyer"] ? ) :
<pre>
<?php var_dump($_POST); ?>
</pre>

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

ViPHP
ViPHP | 3607 Messages

15 mars 2007, 20:19

chez moi, ce code:
<form id="monformulaire" method="post" action="contact.php">
    <span class="Style15">Objet :</span><br />
    <input name="objet" type="text" dir="ltr" size="60" maxlength="60" /><br />
    <span class="Style15">Votre message :</span><br />
    <textarea name="message" rows="3" dir="ltr" cols="57"></textarea><br />
    <input type="image" src="images/envoyer.gif" onclick="document.getElementById('monformulaire').submit();" name="envoyer" onMouseOver="this.src='images/envoyer2.gif'" onMouseOut="this.src='images/envoyer.gif'" />
</form> 
fonctionne parfaitement!

Eléphant du PHP | 183 Messages

15 mars 2007, 20:24

desolé mais mon script php de reagit pas au clique du bouton image mais reagit bien au clique sur le type submit ...

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

15 mars 2007, 20:34

enleve tout ce qui est JS fait au plus simple... montrer ce que tu as essayé exactement lorsque tu dis que "ça ne marche pas".

Et le bout de code donne quoi ?

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 183 Messages

15 mars 2007, 20:56

ca marche pas avec le code montrer plus haut, pas non plus avec le code de jojolapine, mais ca marche avec le input type=submit de base, le php repond correctement mais pas avec le input type=image avec ou sans rollover...

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

15 mars 2007, 21:09

La page se recharge ou pas non plus sur clic sur le bouton de type image ?

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Mammouth du PHP | 505 Messages

15 mars 2007, 21:11

submit est une fonction, ton code tout la haut est correct mais sur le onclick il faut mettre ='submit();'