Input type"image"

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Input type"image"

Re: Input type"image"

par orell1 » 05 déc. 2011, 23:26

Merci beaucoup, j'ai procédé autrement en utilisant le css ;-)

Re: Input type"image"

par Ryle » 05 déc. 2011, 22:22

hop hop hop !

Un input de type image est l'équivalent d'un bouton submit. Lorsque l'on clique sur l'image, le formulaire va être automatiquement envoyé, donc y a rien à mettre dans le onclick, pas plus que dans celui du submit !

En revanche, le fait d'utiliser un input de type image va t'envoyer les coordonnées du point qui a été cliqué sous la forme nomDeTonChamp.x et nomDeTonChamp.y (que php va transformer en nomDeTonChamp_x et nomDeTonChamp_y)

Du coup si tu as un test sur la présence de $_POST['action'], celui-ci ne fonctionnera pas. Il faut tester $_POST['nomDeTonChamp.x'] ou n'importe quel autre champ de ton formulaire qui sera systématiquement envoyé (un hidden par exemple).

A noter que certains navigateurs vont quand même envoyer le nom du champ (donc les 3 informations : nomDeTonChamp, nomDeTonChamp.x et nomDeTonChamp.y), mais ce fonctionnement n'est pas généralisé, donc pour plus de sécurité, vaut mieux tester l'une des coordonnées :)

Re: Input type"image"

par xTG » 05 déc. 2011, 11:57

<form method="POST" name="codepage">
    <input type="hidden" name="codepage" value="RECHERCHER_CLIENTS" />
Tu as deux éléments qui possèdent le même nom, cela provient peut être de cela.

Re: Input type"image"

par orell1 » 05 déc. 2011, 10:52

non toujours pas... :-(

peut-être que cela provient de mon formulaire, non?
<form method="POST" name="codepage">
    <input type="hidden" name="codepage" value="RECHERCHER_CLIENTS" />
    
<h1>Liste des comptes actifs (<?php echo is_array($actifs)?count($actifs):0;?>)</h1>
<p><input type="checkbox" onclick="selectTout(this,'uActifs[]');" />Sélectionner tout</p>
<table border="0"><?php echo isset($listeUtilisateursActifs)?$listeUtilisateursActifs:"";?></table>

<h1>Liste des comptes désactivés (<?php echo is_array($nonActifs)?count($nonActifs):0;?>)</h1>
<p><input type="checkbox" onclick="selectTout(this,'uNonActifs[]');" />Sélectionner tout</p>
<table border="0"><?php echo isset($listeUtilisateursNonActifs)?$listeUtilisateursNonActifs:"";?></table>

<h1>Liste des comptes supprimés (<?php echo is_array($supprimes)?count($supprimes):0;?>)</h1>
<p><input type="checkbox" onclick="selectTout(this,'uSupprimes[]');" />Sélectionner tout</p>
<table border="0"><?php echo isset($listeUtilisateursSupprimes)?$listeUtilisateursSupprimes:"";?></table>

<br /><h1>Gestion des comptes | Choisissez une action</h1>
<center><strong><br />
Gestion des Comptes</strong><br />
<input type="image" src="../images/BOUTON-ACTIVER-COMPTE-CLIENT.png" name="action" value="Activer" onclick="document.forms['codepage'].submit();" /> // NE FONCTIONNE PAS! CEUX DU DESSOUS SI
<input type="submit" name="action" value="Desactiver" style="color:#F00" />
<br / style="margin-bottom:5px;">
<input type="submit" name="action" value="Restaurer" style="color:#090" />
<input type="submit" name="action" value="Supprimer" style="color:#F00" />
<br /><br />
<h1></h1>
<br />
<strong>Gestion de la messagerie</strong><br />
<input type="submit" name="action" value="Activer Alerte" style="color:#090" />
<input type="submit" name="action" value="Desactiver Alerte" style="color:#F00"/>
<br /><br />
<h1></h1>
<br />
<strong>Suppression définitive</strong><br />
<input type="submit" name="action" value="Supprimer definitivement" style="color:#F00"/></center>
</form>

Re: Input type"image"

par xTG » 05 déc. 2011, 10:24

<?php
if( !empty($_POST['test']) ) echo'ok';
?>
<form method="POST" name="codepage">
	<input type="text" name="test" value="1" />
	<input type="image" src="../images/BOUTON-ACTIVER-COMPTE-CLIENT.png" name="action" value="Activer" onclick="document.forms['codepage'].submit();" />
</form>

Re: Input type"image"

par orell1 » 05 déc. 2011, 09:20

et je viens de faire ça :

<form method="post" name="codepage">
<input type="hidden" name="codepage" value="RECHERCHER_CLIENTS" />
<input type="image" src="../images/BOUTON-ACTIVER-COMPTE-CLIENT.png" name="action" value="Activer" onclick="document.forms['codepage'].submit();" />

mais toujours pareil... :-(

Re: Input type"image"

par orell1 » 05 déc. 2011, 08:58

j'ai essayé ça mais toujours pareil : <input type="image" src="../images/BOUTON-ACTIVER-COMPTE-CLIENT.png" name="action" value="Activer" onclick="codepage.forms['action'].submit();" />

merci

Re: Input type"image"

par xTG » 05 déc. 2011, 07:28

codepage doit être le nom de la balise form.

Re: Input type"image"

par orell1 » 04 déc. 2011, 23:47

idem, lorsque je modifie la value ça ne fonctionne plus...

ETAT INITIAL : <input type="submit" name="action" value="Activer" style="color:#090" /> = ça fonctionne
MODIFIE : <input type="submit" name="action" value="Activer Compte Client" style="color:#090" /> = ça ne fonctionne pas

Etrange, non?

Re: Input type"image"

par orell1 » 04 déc. 2011, 23:43

ça ne fonctionne pas ... :-(

j'ai fait ça : <input type="image" src="../images/BOUTON-ACTIVER-COMPTE-CLIENT.png" name="action" value="Activer" onclick="document.forms['codepage'].submit();" />

le début de mon formulaire...

<form method="post">
<input type="hidden" name="codepage" value="RECHERCHER_CLIENTS" />


merciiii

Re: Input type"image"

par xTG » 04 déc. 2011, 23:38

A la place de ce que tu as dans le onclick...
Et en prenant garde à modifier mon code en fonction de ton formulaire...

Re: Input type"image"

par orell1 » 04 déc. 2011, 23:37

Merci.
Mais je dois le placer où ce truc? loool

Merci

Re: Input type"image"

par xTG » 04 déc. 2011, 23:29

Le this référence le input et non le form.
Pour accéder à l'objet form :

Code : Tout sélectionner

document.forms['nom_de_mon_form'].submit();

Input type"image"

par orell1 » 04 déc. 2011, 23:07

Bonsoir à tous,
je ne comprends pas pourquoi mon input image ne fonctionne pas...
le voici : <input type="image" src="../images/BOUTON-ACTIVER-COMPTE-CLIENT.png" name="action" value="Activer" onclick="this.form.submit();" />

Lorsque j'utilise <input type="submit" name="action" value="Activer" /> aucun problème l'action se fait mais quand je veux utiliser la même action pour le input image, ça ne fonctionne pas...

Quelqu'un pour m'aider?

Merci par avance.