Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/12/2011, 15h13   #1
Invité régulier
 
Inscription : novembre 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 37
Points : 7
Points : 7
Par défaut Submit d'un form ne faisant pas de redirection.

Bonjour,

Je suis entrain de réalisé un formulaire qui va s'acheminer en plusieurs pages, et j'utilise donc une page test.php qui recois l'array des variables (SESSION) récupérés depuis la page contact.php contenant le premier formulaire.

Le problème c'est que l'orsque j'appuis sur submit, la verification des champs (en PHP et en JAVASCRIPT) est correctement effectué mais lorsque les champs sont remplis et correctes je n'ai pas de redirection sur la page: test.php (qui serra remplacé par la suite du formulaire).

j'ai pourtant fais ceci:

Code :
1
2
3
4
 
if($valid){
   header('Location: test.php');	
}
Mais cela ne fonctionne pas, et même lorsque je renseigne le champs: (action:"") du form en indiquant la page test.php ça ne change rien.

Voici la page en question: ICI

PS: j'ai une erreur lorsque j'appuis sur le bouton "submit", à priori le problème pourrait provenir de là.

Code :
1
2
3
4
Uncaught TypeError: Cannot call method 'match' of undefined
(anonymous function)contact.php:80
c.event.handlejquery.js:63
c.event.add.h.handle.o
Pourriez-vous éclairer ma lanterne?
Shakuro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2011, 15h41   #2
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 071
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 071
Points : 45 202
Points : 45 202
php coté serveur ...
js coté client ...
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2011, 23h00   #3
Invité régulier
 
Inscription : novembre 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 37
Points : 7
Points : 7
Merci d'avoir répondu, cela dit cela ne m'aide pas grandement.

D'après ce que j'ai compris de tes deux lignes, c'est que la redirection je devrais la faire dans la partie javascript et oublier mon:

Code :
1
2
3
if($valid){
   header('Location: test.php');	
}
de la partie php ?
Shakuro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2011, 08h24   #4
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 071
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 071
Points : 45 202
Points : 45 202
ce bout de code c'est du javascript ou du php ???

si c'est du javascript ... comment veux tu que ton navigateur interprète le php ???
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2011, 09h44   #5
Membre expérimenté
 
Avatar de tigunn
 
Homme
Développeur de bug
Inscription : janvier 2003
Messages : 520
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 31
Localisation : France

Informations professionnelles :
Activité : Développeur de bug

Informations forums :
Inscription : janvier 2003
Messages : 520
Points : 536
Points : 536
Je crois qu'il y a confusion entre des méthodes php et javascript; dans ton code tu fais:
Code :
$("form").submit(header('Location: test.php'));
Donc dans ton jQuery tu inclut du php , cela ne peut pas marcher!

je pense que :
Code :
1
2
3
4
$(function() {
$("#submit").click(function(){
   $("form").submit();
});
et dans ton html:
Code :
<form  method="post" action="test.php" id="text">
Cela devrait suffire ... a tester


Après test:
Code :
1
2
3
4
5
6
7
8
$(function() {
$("btn_add").click(function(){
   $("text").submit();
});
....
//html
<form  method="post" action="test.php" id="text">
<input type="button" id="btn_add"/><!-- pas de submit -->
__________________
"le rhume distillation - L’estomac est la cucurbite, le cerveau le chapiteau, & le nez le réfrigérant par lequel s’écoule goutte à goutte le produit de la distillation."
de Avicenne

Le monde se divise en deux: ceux qui utilisent le tag et les autres.

Un problème? venez en découdre!
tigunn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2011, 12h00   #6
Membre expérimenté
 
Duke Jikel
Inscription : mai 2010
Messages : 340
Détails du profil
Informations personnelles :
Nom : Duke Jikel

Informations forums :
Inscription : mai 2010
Messages : 340
Points : 548
Points : 548
J'ai lancé ta page, et bam mon navigateur s'est mis à ramer de chez ramer, mon processeur est passé de 20% d'utilisation à 100% (j'ai un macbook pro 2008 avec 8go de ram + SSD)
Ton site ne donne pas envie d'y rester, juste à cause de ce problème.
dukej est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 08/12/2011, 13h46   #7
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 071
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 071
Points : 45 202
Points : 45 202
En tout cas, j'adore le select avec ses 31 options
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2011, 14h44   #8
Invité régulier
 
Inscription : novembre 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 37
Points : 7
Points : 7
Bonjour,

merci tigunn pour cette réponse claire. Je testerais tout ça ce soir.

La select avec les 31 options est tiré d'un plugin appelé selectzor. Car je ne serais pas dutout le refaire moi même, et effectivement lorsque j'applique un: "size= 10" sur la select année (dans le code html) la select perd tout son "style".


Dukej, merci pour le compliment, dans ce cas là, n'y retourne plus et tu ne rameras plus . D'autant plus que tu es la première personne qui me signale ce genre de problème même avec un vieux dell inspiron 6400 core de duo et 2go de ram le processeur ne s'emballe pas chez moi...
Shakuro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2011, 23h21   #9
Invité régulier
 
Inscription : novembre 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 37
Points : 7
Points : 7
Bonsoir,

J'ai essayé d'y intégrer tes modifications, mais cela ne fonctionne pas... Alors soit je place mes morceaux de code au mauvais endroit, soit le problème vient d'ailleurs.
PS: Tu avais oublié les dièses :

Code :
1
2
3
4
5
6
7
8
$(function() {
$("#btn_add").click(function(){
   $("#text").submit();
});
....
//html
<form  method="post" action="test.php" id="text">
<input type="button" id="btn_add"/><!-- pas de submit -->
PS2: Lorsque je place la fonction submit sous le click(function) le form est bien redirigé sur la page next.php mais la verification des champs ne s'effectue pas, c'est pour cela que j'ai essayé de placé la fonction submit après la verification des champs...

PS3: En tout cas, merci pour le coup de patte !
Shakuro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2011, 23h30   #10
Membre expérimenté
 
Duke Jikel
Inscription : mai 2010
Messages : 340
Détails du profil
Informations personnelles :
Nom : Duke Jikel

Informations forums :
Inscription : mai 2010
Messages : 340
Points : 548
Points : 548
Citation:
Envoyé par Shakuro Voir le message
Bonjour,

merci tigunn pour cette réponse claire. Je testerais tout ça ce soir.

La select avec les 31 options est tiré d'un plugin appelé selectzor. Car je ne serais pas dutout le refaire moi même, et effectivement lorsque j'applique un: "size= 10" sur la select année (dans le code html) la select perd tout son "style".


Dukej, merci pour le compliment, dans ce cas là, n'y retourne plus et tu ne rameras plus . D'autant plus que tu es la première personne qui me signale ce genre de problème même avec un vieux dell inspiron 6400 core de duo et 2go de ram le processeur ne s'emballe pas chez moi...
Le problème vient de ton background avec la flash, il consomme plus de 50% du CPU, et c'est assez horrible. Je te conseille quand même d'y jeter un coup d'oeil en lancant le gestionnaire de taches quand tu accèdes à ton site.
dukej est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 11h45   #11
Membre expérimenté
 
Avatar de tigunn
 
Homme
Développeur de bug
Inscription : janvier 2003
Messages : 520
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 31
Localisation : France

Informations professionnelles :
Activité : Développeur de bug

Informations forums :
Inscription : janvier 2003
Messages : 520
Points : 536
Points : 536
Pour les selecteurs:
Code :
1
2
3
$("#btn_add")   // sélectionne l'élément dont l'id est 'btn_add'
$("btn_add")   // équivaut au précédent
$(".btn_add")   // sélectionne l'élément dont la classe est 'btn_add'
Pour ton code, je ne l'ai pas tester mais ainsi, cela devrait fonctionner:
Code :
1
2
3
4
5
6
$("#btn_add").click(function(){
   // verif des champs
   .....
   // post formulaire
   $("#text").submit();
});
Bon courage, a+
__________________
"le rhume distillation - L’estomac est la cucurbite, le cerveau le chapiteau, & le nez le réfrigérant par lequel s’écoule goutte à goutte le produit de la distillation."
de Avicenne

Le monde se divise en deux: ceux qui utilisent le tag et les autres.

Un problème? venez en découdre!
tigunn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 11h48   #12
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 808
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 808
Points : 35 789
Points : 35 789
Citation:
Code :
1
2
$("#btn_add")   // sélectionne l'élément dont l'id est 'btn_add'
$("btn_add")   // équivaut au précédent

$("btn_add") sélectionne les éléments dont le nom de balise est 'btn_add'.
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 14h22   #13
Membre expérimenté
 
Avatar de tigunn
 
Homme
Développeur de bug
Inscription : janvier 2003
Messages : 520
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 31
Localisation : France

Informations professionnelles :
Activité : Développeur de bug

Informations forums :
Inscription : janvier 2003
Messages : 520
Points : 536
Points : 536
j'ai encore confondu mootools et jQuery .
Bien joué le contrôle
__________________
"le rhume distillation - L’estomac est la cucurbite, le cerveau le chapiteau, & le nez le réfrigérant par lequel s’écoule goutte à goutte le produit de la distillation."
de Avicenne

Le monde se divise en deux: ceux qui utilisent le tag et les autres.

Un problème? venez en découdre!
tigunn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 19h49   #14
Invité régulier
 
Inscription : novembre 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 37
Points : 7
Points : 7
J'ai déjà procédé de cette façon hier soir sans résultat, d'où mon précédent message, voici le code js actuel:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
		$(function() {
			$("#robot").hide();
			$("#btn_next").click(function(){
				valid=true;
 
				if($("#nom").val()==""){
					$("#nom").next(".error-message").fadeIn().text("Veuillez entrer votre nom");
					valid=false;
				}
				else if(!$("#nom").val().match(/^[a-z-ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ]{2,15}$/i)){
						$("#nom").next(".error-message").fadeIn().text("Votre nom n'est pas valide");
						valid=false;
				}
				else{
					$("#nom").next(".error-message").fadeOut();
				}
 
/* ceci pour tout les champs à verifier */
 
				if($("#tel").val()==""){
					$("#tel").next(".error-message").fadeIn().text("Veuillez entrer votre télephone");
					valid=false;
				}
				else if(!$("#tel").val().match(/^0[1-68]([-. ]?[0-9]{2}){4}$/)){
						$("#tel").next(".error-message").fadeIn().text("Votre numéro de télephone n'est pas valide");
						valid=false;
				}
				else{
					$("#tel").next(".error-message").fadeOut();			
				}
				return valid
 
				$("#text").submit();
			});
		});
	</script>
Une idée ?
Shakuro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2011, 14h47   #15
Invité régulier
 
Inscription : novembre 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 37
Points : 7
Points : 7
Bonjour,

J'ai trouvé d'où venait l'erreur de la console :

Code :
$('#CodePostal').val() =====> undefined
ma div à l'id "codepostal" et non pas "CodePostal"

En modifiant tout ça, je n'ai plus d'erreur, mais la page ne se submit toujours pas .

Savez-vous si j'ai mal organisé mon code ?

Code :
1
2
return valid;   
$("#text").submit();
Shakuro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2011, 15h17   #16
Modérateur
 
Avatar de NoSmoking
 
Homme
Inscription : janvier 2011
Messages : 2 944
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : janvier 2011
Messages : 2 944
Points : 4 776
Points : 4 776
Citation:
Envoyé par Shakuro Voir le message
Code :
1
2
return valid;  
$("#text").submit();
c'est ballot mais en procédant de la sorte le return fait que la ligne qui suit n'est jamais excécutée
NoSmoking est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2011, 18h56   #17
Invité régulier
 
Inscription : novembre 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 37
Points : 7
Points : 7
Ah! le voila l'élément perturbateur!

Et tu sais comment je peux contourner ça?

Car la syntaxe js, j'avoue que j'ai du mal .

Code :
1
2
3
If(valid = true) {
$("#text").submit();
});
Shakuro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2011, 19h43   #18
Modérateur
 
Avatar de NoSmoking
 
Homme
Inscription : janvier 2011
Messages : 2 944
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : janvier 2011
Messages : 2 944
Points : 4 776
Points : 4 776
Citation:
Envoyé par Shakuro Voir le message
Car la syntaxe js, j'avoue que j'ai du mal .

Code :
1
2
3
If(valid = true) {
$("#text").submit();
});
je crois qu'il faut que tu (re)prennes les bases
Citation:
If(valid = true) {
$("#text").submit();
});
devrait être
Code :
1
2
3
4
5
6
7
if( valid == true) { // test égalité -> ==, affectation -> =
  $("#text").submit();
});
 // ou simplement 
if( valid) {
  $("#text").submit();
});
NoSmoking est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 12/12/2011, 07h08   #19
Invité régulier
 
Inscription : novembre 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 37
Points : 7
Points : 7
Niquel

PS: Juste que mes variables de sessions sont vides arrivés sur la page test.php alors qu'avant l'array contenait toute les infos des radios, inputs et selects. Il va falloir que je me penche sur ce nouveau problème.


Page du formulaire:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
session_start();
 
$_SESSION['Civilite'] = $civilite;
$_SESSION['Nom'] = $nom;
$_SESSION['Prenom'] = $prenom;
$_SESSION['Email'] = $email;
$_SESSION['Adresse'] = $adresse;
$_SESSION['Code postal'] = $codepostal;
$_SESSION['Ville'] = $ville;
$_SESSION['Tel'] = $tel;
$_SESSION['Date de naissance'] = $datedenaissance;
 
if(!empty($_POST)){
	extract($_POST);
	$valid=true;
Code :
1
2
3
4
<div class="conteneur_input">
	<input type="text" name="nom" id="nom" value="<?php if(isset($nom)) echo $nom; ?>" maxlength="25"/>
	<span class="error-message"><?php if(isset($erreurnom)) echo $erreurnom; ?></span>
</div>
Page de test.php:

Code :
1
2
3
4
5
<?php 
	session_start();
	print_r($_SESSION);
	session_destroy();
?>
Shakuro est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h27.


 
 
 
 
Partenaires

Hébergement Web