Checkbox de validation.

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 : Checkbox de validation.

par Ryle » 17 mai 2006, 11:17

donc le traitement se fait sur la page inscription1.php
Dans ce cas, ton formulaire devrait appeller "index.php?page=inscription1" nan ?

Si la case n'est pas cochée, tu affiches le message d'erreur, et si celle-ci est cochée, tu ajoutes effectivement un p'tit bout de JS pour rediriger vers la page suivante :

Code : Tout sélectionner

<script> document.location = "index.php?page=inscription2"; </script>

par charabia » 17 mai 2006, 11:11

N'oublies pas le résolu ;)

par azerty53 » 17 mai 2006, 11:07

d'accord merci a tous ca fonctionne avec les meta

au plaisir de vous revoir sur le forum

C.Daniel

ciao. et bonne continuation

par charabia » 17 mai 2006, 11:04

Code : Tout sélectionner

meta http-equiv="Refresh"

par azerty53 » 17 mai 2006, 10:58

les meta ???

je vais voir comment ca fonctionne

par charabia » 17 mai 2006, 10:56

Oui mais si tu utilises les pseudo frames, tu as un "gabarit" qui devrait englober ta page. Donc obligatoirement du code HTML avant.

Testes la redirection en javascript ou méta pour voir si ça fonctionne. J'ai testé de mon côté ces deux autres façons, c'est ok.

par azerty53 » 17 mai 2006, 10:56

oui je pense me mettre au javascript.

Je vous remercie a tous pour votre aide et votre soutien.

Au plaisir.

Cédric Daniel :)

par azerty53 » 17 mai 2006, 10:54

mon formulaire de la page inscription1.php est juste une case a cocher comme quoi on valide le reglement du site.

donc le traitement se fait sur la page inscription1.php

voili voilou

par charabia » 17 mai 2006, 10:54

Il ta faudra utiliser la redirection javascript ou avec les méta je pense.

par Ryle » 17 mai 2006, 10:52

Où se fait le traitement des données de ton formulaire exactement ? sur la page du formulaire ou sur la page inscription2 ?

En fait lorsque tu soumets le formulaire, tu demandes l'ouverture de la page inscription2 à ta pseudo frame, c'est donc elle qui doit gérer les données, l'affichage éventuel des messages d'erreur et le retour au formulaire... comme tu es en pseudo frame, tu ne peux à priori pas utiliser la fonction header dans tes pages/frame puisqu'il y a déjà eu du code html affiché...

par charabia » 17 mai 2006, 10:49

voui c'est là le problème. Si tu utilises des pseudos frames, tu as forcément un autre code avant...qui ne se trouve pas sur la page sur laquelle tu as la redirection.

par azerty53 » 17 mai 2006, 10:46

non j'ai rien devant.
mais ca vient peut etre du fait que j'utilise des pseudo frame.

Non ???

:oops: :oops:

par charabia » 17 mai 2006, 10:41

S'il te met ça c'est que tu as quelque chose avant
<?php 
if(isset($_POST['go']) && $_POST['go']=="go") 
{ 
    if (!isset($_POST['reglement'])) { 
    header("location:valid.php?erreur"); 
    exit;} 
} 
?>
Même un tit espace peut générer cette erreur. Efface vraiment tout ce qu'il y a en haut de ta page avant de coller ce code.

par azerty53 » 17 mai 2006, 10:39

il me met ca par contre quand je coche pas la case:

Warning: Cannot modify header information - headers already sent by (output started at D:\wamp5\www\Dcp\index.php:12) in D:\wamp5\www\Dcp\valid1.php on line 5

par charabia » 17 mai 2006, 10:28

Heu...j'ai essayé ça fonctionne bien chez moi. C'est que tu n'as pas activé la javascript dans ce cas. Faut faire la redirection en php si c'est le cas.
<form method="post" action="valid1.php">
<input type="checkbox" name="reglement">J'ai lu et j'accepte le règlement<br /><br />       
<input type="Submit" value="go" name="go"> 
</form> 
    
<?php
if (isset($erreur)) { 
echo 'Vous devez accepter le reglement pour continuer!'; }
?>
<?php
if(isset($_POST['go']) && $_POST['go']=="go")
{
	if (!isset($_POST['reglement'])) { 
	header("location:valid.php?erreur");
	exit;}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
	<title>Untitled</title>
</head>

<body>

pahe ok


</body>
</html>