disabled input='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 : disabled input='image'

par devil » 14 févr. 2008, 16:14

et non parce que faut que je vire les input image car sous IE ca marche pas (on se demande pourquoi ^^)

par d0m » 14 févr. 2008, 15:59

eh bien en plus du bouton submit, tu met un champ hidden par ligne, avec le même nom pour chacun.
:

Code : Tout sélectionner

//ligne1 <INPUT TYPE="image" ...> <INPUT TYPE="HIDDEN" VALUE="id_enregistrement"> //ligne 2 <INPUT TYPE="image" ...> <INPUT TYPE="HIDDEN" VALUE="id_enregistrement">

par devil » 14 févr. 2008, 15:51

oui c'est ca j'ai un submit par ligne avec l'id dedans pour afficher le detail de l'enregistrement

par d0m » 14 févr. 2008, 15:28

C'est pas très clair, tu as un seul bouton submit ou un pour chaque ligne?
et id_enregistrement correspond à une ligne?
Il faut qu'on ai une idée de ce que tu est en train de faire.

par devil » 14 févr. 2008, 13:02

oui mais le problème c'est que je génére un tableau au chargement de la page avec:
nom, pnom, ..., "mon bouton submit"
nom2, pnom2....

je ne sais pas à l'avance combien de ligne je vais créer


donc le

Code : Tout sélectionner

$valeur = $_POST['id_enregistrement'];
je le mets ou?

par d0m » 14 févr. 2008, 12:37

parce que ca m'oblige a faire du JS et bon...
Non pas du tout, il suffit de mettre ta valeur comme ceci :
<INPUT TYPE="hidden" NAME="id_enregistrement" VALUE="<?php echo $valeur;?> "
et après test de ton bouton submit ou image :
$valeur = $_POST['id_enregistrement'];

par devil » 14 févr. 2008, 11:24

parce que ca m'oblige a faire du JS et bon...

par Victor BRITO » 14 févr. 2008, 10:52

le problème c'est que normalement ce input est un submit (forcément) dans lequel je rcupère l'id de l'enregistrement de ma table
Et pourquoi ne pas utiliser, dans ce cas, un input de type "hidden" ? ;)

par devil » 14 févr. 2008, 10:27

oui oui c'est aps le problème
le problème c'est que normalement ce input est un submit (forcément) dans lequel je rcupère l'id de l'enregistrement de ma table
mais quand je clique dessus sous ff ca marche sous ie il me renvoie pas le value...

IE c'est de la balle |*()

par Victor BRITO » 14 févr. 2008, 10:22

voici mon doctype::

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
Puisque tu codes en XHTML, tu dois mettre checked="checked" et disabled="disabled" pour avoir un code valide.

Es-tu sûr que ton input "image" est correctement formé ? As-tu vérifié le chemin indiqué dans l'attribut src ?

par devil » 14 févr. 2008, 09:23

voici mon doctype::

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
d'ailleurs il me dit doctype introuvable sur le site du w3c

par contre pour les checked des cases à cocher ca marche très bien juste en mettant checked et pas checked='checked'

d'alleurs a mon avis je vais changer ca car IE7 ne reconnait pas les input image donc omment je peux faire pour les remplacer (comme ca je règle le problème ^^)

par Victor BRITO » 13 févr. 2008, 22:15

Un petit mot au passage, disabled seul ne fonctionnera pas, car c'est un booléen[1]. On doit donc le répêter : disabled="disabled".

[1] 3.3.4 Attribute declarations : Boolean attributes, sur le site du W3C.
C'est exactement l'inverse, tu as mal compris. Le passage dit justement que certains navigateur ne reconnaissent que la forme minimalisée c'est à dire

Code : Tout sélectionner

<INPUT .... DISABLED>
Si tu codes en HTML 4, tu peux te contenter d'un simple disabled ; en revanche, en XHTML, il est obligatoire de répéter le nom de l'attribut en guise de valeur.

Code : Tout sélectionner

disabled="disabled"
Même motif, même punition pour selected, checked et readonly.

D'ailleurs, soit dit en passant, y a-t-il un doctype (c'est-à-dire une ligne commençant par <!DOCTYPE) déclaré au début du code HTML généré ?

par Hywan » 13 févr. 2008, 20:56

Il ne fonctionnera pas ... partout ;-).

par d0m » 13 févr. 2008, 20:51

Un petit mot au passage, disabled seul ne fonctionnera pas, car c'est un booléen[1]. On doit donc le répêter : disabled="disabled".

[1] 3.3.4 Attribute declarations : Boolean attributes, sur le site du W3C.
C'est exactement l'inverse, tu as mal compris. Le passage dit justement que certains navigateur ne reconnaissent que la forme minimalisée c'est à dire

Code : Tout sélectionner

<INPUT .... DISABLED>

par Hywan » 13 févr. 2008, 19:03

Un petit mot au passage, disabled seul ne fonctionnera pas, car c'est un booléen[1]. On doit donc le répêter : disabled="disabled".

[1] 3.3.4 Attribute declarations : Boolean attributes, sur le site du W3C.