Formulaire qui envoie plus rien...

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 : Formulaire qui envoie plus rien...

Re: Formulaire qui envoie plus rien...

par ikarytos » 13 mars 2012, 20:46

Tout fonctionne parfaitement.

Je m'en serais jamais sorti sans ton aide Un grand merci à toi xTG,

Re: Formulaire qui envoie plus rien...

par xTG » 13 mars 2012, 20:37

Pour un textarea ?
Même principe que pour un input sauf qu'il n'y a pas d'attribut value, il faut mettre le contenu entre la balise ouvrante et la balise fermante.

Re: Formulaire qui envoie plus rien...

par ikarytos » 13 mars 2012, 19:58

Super :D

J'intervient une dernière fois pour le textarea si cela est faisable pour cette zone texte..? A savoir qu'il n'y a rien au préalable à mémoriser, seulement le texte du visiteur.

En tout cas merci à toi pour ta patience et rapidité.

Re: Formulaire qui envoie plus rien...

par xTG » 13 mars 2012, 19:34

Les couleurs sont des chaînes de caractère, il faut donc les mettre entre quote. ;)

Re: Formulaire qui envoie plus rien...

par ikarytos » 13 mars 2012, 19:13

Merci, ça marche pour les polices, mais pas pour les couleurs, ça me fais des erreurs de syntaxes,

Parse error: syntax error, unexpected T_STRING in C:\Program Files (x86)\EasyPHP-5.3.8.1\www\ecarte\index.php5 on line 196
<SELECT NAME="fontcolor" class="boiteFormulaire">
  <OPTION VALUE="000000" SELECTED="selected">Noir</OPTION>
  <OPTION VALUE="FF0000" <?php if(isSet($_POST['fontcolor']) && $_POST['fontcolor'] == FF0000) echo 'SELECTED="selected"'; ?>>Rouge</OPTION>
  <OPTION VALUE="DC143C" <?php if(isSet($_POST['fontcolor']) && $_POST['fontcolor'] == DC143C) echo 'SELECTED="selected"'; ?>>Pourpre</OPTION>
  <OPTION VALUE="0000FF" <?php if(isSet($_POST['fontcolor']) && $_POST['fontcolor'] == 0000FF) echo 'SELECTED="selected"'; ?>>Bleu</option>
  <OPTION VALUE="00FFFF" <?php if(isSet($_POST['fontcolor']) && $_POST['fontcolor'] == 00FFFF) echo 'SELECTED="selected"'; ?>>Cyan</option> 
  <OPTION VALUE="008000" <?php if(isSet($_POST['fontcolor']) && $_POST['fontcolor'] == 008000) echo 'SELECTED="selected"'; ?>>Vert</option>
  <OPTION VALUE="00FF7F" <?php if(isSet($_POST['fontcolor']) && $_POST['fontcolor'] == 00FF7F) echo 'SELECTED="selected"'; ?>>Vert printemps</option>
</select>
Et aussi, il y a t'il une solution pour mètre dans la valeur de contrôle php le sigle # qui se trouve au début des codes couleurs?

Re: Formulaire qui envoie plus rien...

par xTG » 13 mars 2012, 17:46

Pour un select il faut utiliser l'attribut selected="selected" sur la balise option.

Re: Formulaire qui envoie plus rien...

par ikarytos » 13 mars 2012, 17:44

Excusez moi, juste encore une petite variante..

Pour une liste select, es la même chose? il faut le mettre a chaque valut?? car j'ai tenter le coup mais je reçois que des error...

<?php
$mois = array("","Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"); 
$a = date("d");
$b = $mois[date("n")];
$c = date("Y");
?>


<div class="formMenu">Envoyé le :</div></td></tr><tr><td><div class="formMenu">
<select name="jour" class="boiteFormulaire">
<option value="<?php echo($a);?>"><?php echo($a);?></option>
<option value="02">2</option>
<option value="03">3</option>
<option value="04">4</option>
<option value="05">5</option>
<option value="06">6</option>
<option value="07">7</option>
<option value="08">8</option>
<option value="09">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
etc...
</select>

<select name="mois" class="boiteFormulaire">
<option value="<?php echo($b);?>"><?php echo($b);?></option>
<option value="01">janvier</option>
<option value="02">février</option>
<option value="03">mars</option>
etc...
</select>

<select name="annee" class="boiteFormulaire">
<option value="<?php echo($c);?>"><?php echo($c);?></option>
<option value="2012">2012</option>
<option value="2013">2013 </option>
<option value="2013">2014</option>
</select>

[Résolu] Re: Formulaire qui envoie plus rien...

par ikarytos » 11 mars 2012, 14:16

Cool ca marche :D (même si c'est une évidence pour vous :wink: )


Un grand merci pour votre aide.

Re: Formulaire qui envoie plus rien...

par Ryle » 11 mars 2012, 14:07

C'est le test qui n'est pas bon... si la valeur du bouton radio est $reponse2['nom'] alors il faut que le contrôle vérifie cette valeur et non pas 1 pour ajouter l'attribut :)
if (isSet($_POST['radiobutton2']) && $_POST['radiobutton2'] == $reponse2['nom'])
   $tableau2 .= '<input type="radio" name="radiobutton2" value="' . $reponse2['nom'] . '" checked="checked" />';
else
   $tableau2 .= '<input type="radio" name="radiobutton2" value="' . $reponse2['nom'] . '" />';

Re: Formulaire qui envoie plus rien...

par ikarytos » 11 mars 2012, 13:22

Bonjour Ryle,

Merci de ton aide, j'ai testé les deux options, il y a effectivement plus d'erreur de syntaxe mais le il ne se passe rien de plus, au moment de prévisualiser la page se recharge, les input text se recharge mais les bouton radio reste tous blanc...

Re: Formulaire qui envoie plus rien...

par Ryle » 11 mars 2012, 01:18

Petit problème de syntaxe... tu ne peux pas coller un if php en plein milieu d'une chaine php (ou alors faut utiliser l'opérateur ternaire) :)
// option 1
if (isSet($_POST['radiobutton2']) && $_POST['radiobutton2'] == 1)
   $tableau2 .= '<input type="radio" name="radiobutton2" value="' . $reponse2['nom'] . '" checked="checked" />';
else
   $tableau2 .= '<input type="radio" name="radiobutton2" value="' . $reponse2['nom'] . '" />';

// option 2 avec l'opérateur ternaire: (condition) ? si vrai : si faux;
$tableau2 .= '<input type="radio" name="radiobutton2" value="' . $reponse2['nom'] . '" ' . ((isSet($_POST['radiobutton2']) && $_POST['radiobutton2'] == 1) ? 'checked="checked"' : '') . '>';

Re: Formulaire qui envoie plus rien...

par ikarytos » 11 mars 2012, 00:08

Vraiment merci pour ta patience, mais malheureusement je n'y arrive vraiment pas :? j'ai cherché presque toute l'après-midi mais je reçois que des erreurs.

$tableau2 .= "<td width='5%' align='center'><input type='radio' name='radiobutton2' value=\"".$reponse2['nom']."\" if(isSet($_POST['radiobutton2']) && $_POST['radiobutton2'] == 1) echo 'checked="checked"'>

Re: Formulaire qui envoie plus rien...

par xTG » 10 mars 2012, 10:19

C'est le même principe sauf que le value n'est pas une valeur fixe mais une variable.

Re: Formulaire qui envoie plus rien...

par ikarytos » 09 mars 2012, 23:28

Mais avec cette exemple c'est aussi possible? car je n'y arrive pas... :(

<?PHP
$calcul = "2";
$requete2 = "SELECT * FROM client";
$resultat2 = mysql_query($requete2);
$tableau2 = "<table border='0' align='center' width='100%'><tr><td width='5%' align='center'><input type='radio' name='radiobutton2' value=\"aucune\" checked></td><td width='45%'>aucune liste</a></td>";
while($reponse2  = mysql_fetch_array($resultat2)){
$tableau2 .= "<td width='5%' align='center'><input type='radio' name='radiobutton2' value=\"".$reponse2['nom']."\" ></td><td width='45%'><a href=\"liste/".$reponse2['nom']."\">".$reponse2['titre']."</a></td>";
$division = $calcul/2;
if ( is_int($division) ) {
$tableau2 .= "</tr><tr>";
}
$calcul = $calcul+1;
}
$tableau2 .= "</tr></table><p>&nbsp;</p><p>&nbsp;</p>";
echo($tableau2);
?>

Re: Formulaire qui envoie plus rien...

par xTG » 09 mars 2012, 22:44

Il faut faire des conditions pour rajouter l'attribut checked.
<input type="radio" name="monRadio" value="1" <?php if(isSet($_POST['monRadio']) && $_POST['monRadio'] == 1) echo 'checked="checked"'; ?>/>