Js, ouverture pop-up

Résolu/Fermé
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 - 1 juil. 2010 à 12:33
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 - 1 juil. 2010 à 16:27
Bonjour à tous,

j'ai un problème !! oui je sais c'est le but de poster sur un forum..

Bon je m'explique :

Contexte rapide : site internet, envoi de mail d'un internaute.

Je dispose donc de 3 pages *.php

--> nouscontacter.php
--> pageconfirm.php
--> confirmer.php

La page nouscontacter.php est la page contenant le formulaire principal.

La deuxième page, pageconfirm.php, est une page qui s'ouvre dans un pop-up après validation du formulaire de la première page. c'est un aperçu avant l'envoi du mail.

La troisième page, confirmer.php, est la page qui, après avoir validé le deuxième formulaire (pageconfirm.php), envoi le mail.

Mon souci est tel que :

Pour ouvrir le pop up j'appelle donc une fonction js.

Ce pop-up je voudrai ne l'ouvrir que si tout les éléments du formulaire 1 sont bien remplis (chose faite, la vérification des données fonctionne)

mais, je n'y arrive pas.. je met le code js concerné ci dessous pour plus de précision.

if (msg != "") 
	{
		alert(msg);
		window.location.replace("../index.php?num=5");
		return(false);
	}
	else	
	{
		my_form = eval(document.formconfirm)
		alert(msg);
		window.open('PHP/pageconfirm.php', 'popup', config='height=1000,width=1000,menubar=no,toolbar=no,location=no,status=no,scrollbars=no');
		my_form.target = "popup";
		my_form.submit();
		return(true);
	}


Ici donc, si la variable msg est non nulle, cela veut dire qu'il y a au moins une erreur sur la saisie des informations. je ré-affiche donc ma page principale contenant le formulaire sans ouvrir le pop-up. --> fonctionnel

si la variable msg est nulle, cela veut dire que le l'on ouvre la page confirm.php.
--> non fonctionnel

j'ai beau avoir les alertes qui s'affichent à chaque endroit, rien n'y fait le pop-up ne s'ouvre pas.

Voici l'en-tête de mon formulaire.

<form action="PHP/pageconfirm.php" method="POST" name="formconfirm" onsubmit="javascript:check(this);" enctype="application/x-www-form-urlencoded">

Ici la fonction check() est celle qui contient le code js ci-dessus.

Voilà merci de vos éventuelles idées.

Je vais manger, je répondrai et testerai d'éventuelles solutions dès mon retour. Merci

Necro27
A voir également:

8 réponses

j'ai trouvé ou ca coince : comme je t'ai l'ai dit dans mon premier message il faut supprimer l'action de ton formulaire puisque tu le gere en javscript. Ne laisse que ca :
<form method="POST" name="formconfirm" enctype="application/x-www-form-urlencoded">

supprime le bouton submit de ton formulaire et remplace par un truc du genre <a href="#" onclick="check();">valider</a>

dans ton js :
if (msg != "")
{
alert(msg);
}

ne laisse que l'affichage des erreurs (inutile de changer la location puisque de cette facon tu ne recharge pas ta page).

et ca doit marcher comme tu l'avais prévu
1
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
1 juil. 2010 à 16:27
c'est bon niquel !!!! merci beaucoup !! mais par contre je dois laisser le action sur le form, mais en effet je n'avais pas faire autre chose que l'affichage des erreurs !! c'est génial merci beaucoup :)

Bonne soirée à tous
0
Salut,

je ne sais pas si le pb vient de là mais :
1- si tu gere ton submit via js, tu n'a pas besoin d'avoir d'action dans ton form

2- si tes pages php sont toutes les 3 au meme endroits, tu dois pouvoir l'appeler sans remettre PHP/... sinon le chemin est faux.

Sinon,est ce que tu as un message d'erreur qui apparait ? es tu sur que la partie de ta fonction appelant le pop-up est bien parcourue ?
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
1 juil. 2010 à 14:18
bonjour Francois,

je viens de m'apercevoir que j'ai confondu les erreurs dans mon premier post. L'erreur est en fait :

dans le cas d'erreur de saisie :
la page que je veux afficher ne s'affiche pas dans le pop-up mais à la place de celle qui déclenche le js.

dans le cas de non-erreur de saisie (formulaire ok)
ça fonctionne.

Ensuite dc pour ta solution n°1
--> si je retire le action="..."

dans le cas d'erreur de saisie :
ça fonctionne

dans le cas de non-erreur de saisie (formulaire ok)
ça ne fonctionne plus, le pop up est bien lancé mais c la page du premier formulaire au lieu du deuxième qui est affiché (la première page en quelque sorte.)

Les erreurs st inversées en quelque sorte.. un cou ça marche un cou ça marche plus suivant le action ou pas. c'est pour ça que j'ai posté ici je ne comprend pas trop ou est la faille, conflit.

sinon pour le 2-
les 3 pages sont au même endroit mais :

je rappelle les 3 pages

1--> nouscontacter.php
2--> pageconfirm.php
3--> confirmer.php

voilà ce que j'ai :
j'utilise des <div>

index.php (qui contient donc le site "entier")
sur cette page index.php, j'ai un menu à gauche qui, par l'intermédiaire d'un include apelle la page 1 à droite.

ensuite de cette page 1 je voudrai ouvrir en pop-up la page 2
puis confirmer ou annuler avec la page3 (qui gère le traitement)

voici l'architecture :
www
>>siteinternet
>>>>>index.php
>>>>>dossier contenant les pages *.php
>>>>>>>>>nouscontacter.php
>>>>>>>>>pageconfirm.php
>>>>>>>>>confirmer.php
je ne sais pas si elle est claire...

Voilà..sinon aucun message d'erreur à aucun moment, sauf les alert() qui s'affichent bien dans tout les cas de figures, seuls les redirection, ouvertures page fonctionnent mal..

Merci
0
LDMBatman Messages postés 95 Date d'inscription mardi 29 août 2006 Statut Membre Dernière intervention 10 avril 2014 39
1 juil. 2010 à 13:21
Essaie ceci :
window.open('PHP/pageconfirm.php', 'popup','height=1000,width=1000,menubar=no,toolbar=no,location=no,status=no,scrollbars=no');
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
1 juil. 2010 à 14:25
Bonjour LDMBatman

j'ai essayer les résultat sont les mêmes

Cependant, je vient de remarquer quelque chose qui peux peut être aider à comprendre.

Lorsque je clique sur un input reset, mon formulaire 1 se remet à vide

si je valide avec le formulaire vide aprè l'avoir reset
-->une nouvelle page s'ouvre (onglet sous modzilla)
-->et la page d'origine qui est donc mon index.php comme expliqué sur le com' plus haut retourne sur le localhost de base, la où l'on sélectionne le fichier site internet.

si je valide le formulaire vide sans avoir au préalable reset,
--> la page 2 devant s'ouvrir dans la pop-up s'ouvre sur la page1, la remplace.

2 validations censé produire le même effet mais pourtant effets différents..
0
LDMBatman Messages postés 95 Date d'inscription mardi 29 août 2006 Statut Membre Dernière intervention 10 avril 2014 39
1 juil. 2010 à 14:32
Je pense que tu as inversé les methodes location.replace() et open()
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
1 juil. 2010 à 14:40
location replace je l'utilise pour ouvrir une page sur la précédente, et le open pour ouvrir en pop-up;

J'ai déjà essayé de remplacer open par window.location.replace...mais cela ne marche pas plus.
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
1 juil. 2010 à 14:59
j'ai inversé les deux, en vain..
j'ai test également avec et sans le action du form..mais rien ne mache et dans aucun des cas une pop-up ne s'affiche
0
maka54 Messages postés 698 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 4 décembre 2016 80
1 juil. 2010 à 13:27
plutot que d'ouvrir un popup, crée un div pour afficher ton apercu que tu ouvre comme un popup au dessus de ta page
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
1 juil. 2010 à 14:27
bonjour maka

Je ne vois pas ce que tu veux dire, ou du moins je pense que c'est déjà ce que je fais.
la pop-up à la base est le contenu d'un div que j'appelle via la fonction js..je vais poster mes pages si vous voulez peut être que cela vous +.
0
maka54 Messages postés 698 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 4 décembre 2016 80
1 juil. 2010 à 14:35
un popup, tu ouvres une nouvelle page, l'idée que je te donne

c'est un div vide et caché que tu remplis par ton apercu et rend visible par dessus ta page
avec une fonction js
comme çà tu reste toujours sur la meme page (formulaire et apercu) , pas besoin de balader tes variables, et de te casser la tete avec une popup
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
Modifié par necro27 le 1/07/2010 à 14:56
pour l'idée de la pop-up, c'est mon maître de stage qui me la demandé. un pop-up de confirmation.

sinon j'aurai bien juste remplacé tout l'un sur l'autre.. : /

et pour l'idée de balader les variables c'était pour éviter de perdre les données préalablement saisies.

Je sais avec POST que nous pouvons conserver les valeurs d'un champs, et les rapelant s'ils ont déjà été saisis
par exemple..
<input type="text" name="txtnom" value="<?php if(isset($_POST['txtnom']) && !empty($_POST['txtnom'])) {echo $_POST['txtnom'];} else {echo 'Votre nom';} ?>" size="20" onclick="this.value=''" onKeyUp="javascript:couleur(this);" />


Mais au niveau de la liste déroulante je n'arrive pas à conserver la valeur saisie, donc voilà pourquoi passer par une pop-up..


EDIT : je précise que ce n'est pas la seule raison la liste déroulante, mais as en fai partie
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
LDMBatman Messages postés 95 Date d'inscription mardi 29 août 2006 Statut Membre Dernière intervention 10 avril 2014 39
1 juil. 2010 à 14:27
Le problème est que dans le cas où une erreur est détectée, la fonction window.location.replace("../index.php?num=5"); est appelée. Cette fonction charge ton index.php dans la fenetre courante et n'ouvre pas de pop-up.

Je pense que tu as du inverser window.location.replace(); et window.open() qui lui peut t'ouvrir un pop-up
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
1 juil. 2010 à 14:52
if (msg != "")
{
alert(msg);
window.location.replace("../index.php?num=5");
return(false);
}
else
{
my_form = eval(document.formconfirm)
alert("dfjkghdfjkghdfjkghdfjkgdf");
window.open('PHP/pageconfirm.php', 'popup', 'height=1000,width=1000,menubar=no,toolbar=no,location=no,status=no,scrollbars=no');
my_form.target = "popup";
my_form.submit();
return(true);
}

Ici donc si msg est != de vide, donc erreur je relance la page 1
mais s'il n'y a pas de message d'erreur dans msg, je doit bien ouvrir la pop-up...
est-ce que pour toi je me trompe avec le code ci dessus? je devrai inverser les open et replace donc?

cela voudrai dire, selon ma logique (loin d'être superbe), que j'ouvre la pop-up s'il y'a une erreur trouvé (au moins) auquel cas msg serait différent de vide..

Prise de tête pour une broutille j'en suis sûr mais je ne comprend rien...-_-
0
LDMBatman Messages postés 95 Date d'inscription mardi 29 août 2006 Statut Membre Dernière intervention 10 avril 2014 39
1 juil. 2010 à 15:07
Si le message n'est pas vide, tu le montre et tu affiche "index.php?num=5" dans ta première fenetre
Sinon (si il est vide)
tu affiche "dfjkghdfjkghdfjkghdfjkgdf"
et tu ouvre un pop up

C'est bien cela que tu veux? (Désolé, je suis un peu fatigué je m'emmèle ^^)
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
1 juil. 2010 à 15:16
alors je re-précise bien ^^

ici la variable msg, est en fait msg-erreur. (pour mieux comprendre)

Si j'ai une erreur, ou +, dans mon formulaire (champ non saisi, erreur saisie, etc)
j'incrémente à la variable msg un message qui est la raison de l'erreur.

ainsi au final, si msg != " " (donc s'il contient au moins un message d'erreur)
il me listera dans une alerte tous les message d'erreur et me ré-ouvre la page principale (index.php?num=5)

si aucune erreur de saisie dans le formulaire principal, alors msg = " " donc est bien vide, aucun message d'erreur à l'intérieur.
ainsi si le formulaire est qualifié de bien rempli (msg=" ") j'ouvre la pop-up qui me ré-affiche toute les informations saisies afin de permettre à l'utilisateur de vérifier ses saisies et s'il confirme pour de bon

Voilà j'ai détaillé un maximum, parfois trop peut-être mais je veux être clair ^^
Et t'inquiète pas pour la fatigue, d'une personne ne passe outre, ça arrive et de deux c'est bien gentil de chercher à m'aider. donc t'excuser d'être fatigué n'est pas possible. A ce tarif là c'est plutôt à moi de m'excuser de t'empêcher de dormir^^ même si je pense qu'au bout du compte je vais endormir tout le monde avec mon souci..

Et merci aux autres également d'apporter une pierre à l'édifice, pour ce problème, c'est gentil.
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
1 juil. 2010 à 14:38
Bon voici toutes mes pages (qui concernent le problème) où je vais raccourcir un maximum.

index.php
	<body>
		<div id="haut">
		</div>
		
		<div id="gauche">
			<div id="menu">
					<li><a href="index.php?num=5">Nous contacter</a></li>
			</div>
		</div>
		
		<div id="droite">
		<?php 
		
		if (!isset($_GET['num']))
		{
		$num=1;
		}
		else
		{
		$num=$_GET['num'];		
		}
		
		switch ($num)
		{
		case '1' : include("PHP/accueil.php");
		break;
		
		case '5' : include("PHP/nouscontacter.php");
		break;
		default : include("PHP/redirection.php");
		break;
		}
		?>
		</div>
				
		<div id="bas"></div>		
	</body>


----------------> nous contacter.php (qui contient donc le formulaire principal)

<h1>Nous contacter</h1>
<h3 class="info"><center>Tout les champs sont obligatoires sauf indication contraire.</center></h3>
<hr></hr><br />
<form action="PHP/pageconfirm.php" method="POST" name="formconfirm" onsubmit="javascript:check(this);" enctype="application/x-www-form-urlencoded">
	<table border="0" align="center" width="80%">
		<tr>
			<td align="center"><input type="text" name="txtnom" value="<?php if(isset($_POST['txtnom']) && !empty($_POST['txtnom'])) {echo $_POST['txtnom'];} else {echo 'Votre nom';} ?>" size="20" onclick="this.value=''" onKeyUp="javascript:couleur(this);" /></td>
			<td align="center"><input type="text" name="txtpnom" value="<?php if(isset($_POST['txtpnom']) && !empty($_POST['txtpnom'])) {echo $_POST['txtpnom'];} else {echo 'Votre prénom';} ?>" size="20" onclick="this.value=''" onKeyUp="javascript:couleur(this);" /></td>
		</tr>
	</table><br />
	<table border="0" align="center" width="80%">
		<tr>
			<td align="center" colspan="2">
				<select name="lstcivilite" onKeyUp="javascript:couleur(this);">
					<option value="0" selected>Votre civilité</option>
					<option value="1">Mademoiselle</option>
					<option value="2">Madame</option>
					<option value="3">Monsieur</option>
				</select>
			</td>
		</tr>
	</table><br /><hr></hr>
	<table border="0" align="center" width="50%">
		<tr>
			<td colspan="3" align="center"><input type="text" name="mail" onKeyUp="javascript:couleur(this);" value="<?php if(isset($_POST['mail']) && !empty($_POST['mail'])) {echo $_POST['mail'];} else {echo 'Votre adresse e-mail';} ?>" onclick="this.value=''" /></td>
		</tr>
	</table><br />
	<table border="0" align="center" width="50%">
		<tr>
			<td align="center">Numéro de téléphone<sup>(1)</sup></td>
		</tr>
		<tr>
			<td align="center">
			<input type="int" name="txttel" size="1" maxlength="2" onkeyup="suivant(this,'txttel2',2); javascript:couleur(this);" /> .
			<input type="int" name="txttel2" size="1" maxlength="2" onkeyup="suivant(this,'txttel3',2); javascript:couleur(this);" /> .
			<input type="int" name="txttel3" size="1" maxlength="2" onkeyup="suivant(this,'txttel4',2); javascript:couleur(this);"  /> .
			<input type="int" name="txttel4" size="1" maxlength="2" onkeyup="suivant(this,'txttel5',2); javascript:couleur(this);"  /> .
			<input type="int" name="txttel5" size="1" maxlength="2" onKeyUp="javascript:couleur(this);" />
			</td>
		</tr>
	</table><br />
	<table width="90%" align="center"><tr><td><h3 class="info"><sup>(1)</sup> Pour nous permettre de vous contacter, la saisie d'un champ au minimum sur les deux précédents (mail et téléphone) est obligatoire. Bien sûr vous pouvez renseigner les deux champs.</h3></td></tr></table><br />
	<hr></hr><br />
	<table border="0" align="center" width="50%">
		<tr>
			<td align="center">Message</td>
		</tr>
		<tr>
			<td align="center"><textarea name="txtmsg" value="<?php if(isset($_POST['txtmsg']) && !empty($_POST['txtmsg'])) {echo $_POST['txtmsg'];} else {echo 'Tapez votre message ici';} ?>" rows="10" cols="50" onKeyUp="javascript:couleur(this);"></textarea></td>
		</tr>
	</table><br />
	<table border="0" align="center" width="50%">
			<tr>
				<td align="center"><input type="submit" value="Prévisualiser" /></td>
				<td align="center"><input type="reset" value="Annuler" /></td>
			</tr>
		</table>	
	</form><br /><br />


-----------------------> pageconfirm.php (à ouvrir dans la pop-up)

<body>
<div id="confirmdonnees">
<form action="confirmer.php" method="POST" enctype="multipart/form-data" onreset="javascript: ;">
<h1>Confirmation des données saisies</h1>
<p>Votre nom : <?php echo $_POST['txtnom']; ?></p>
<p>Votre prénom : <?php echo $_POST['txtpnom']; ?></p>
<p>Votre civilité :
<?php
if ($_POST['lstcivilite']==1)
{
$civilite2 = 'Mademoiselle';
echo $civilite2;
}
else
{
if($_POST['lstcivilite']==2)
{
$civilite2 = 'Madame';
echo $civilite2;
}
else
{
if ($_POST['lstcivilite']==3)
{
$civilite2 = 'Monsieur';
echo $civilite2;
}
}
}
?></p>
<p>Votre e-mail : <?php echo $_POST['mail']; ?></p>
<?php
if($_POST['txttel']!=0 && $_POST['txttel2']!=0 && $_POST['txttel3']!=0 && $_POST['txttel4']!=0 && $_POST['txttel5']!=0)
{
$tel = $_POST['txttel'].".".$_POST['txttel2'].".".$_POST['txttel3'].".".$_POST['txttel4'].".".$_POST['txttel5'];
}
?>
<p>Votre numéro de téléphone : <?php echo $_POST['txttel'].".".$_POST['txttel2'].".".$_POST['txttel3'].".".$_POST['txttel4'].".".$_POST['txttel5']; ?></p>

<p>Votre message : <?php echo $_POST['txtmsg']; ?></p>

<input type="hidden" value="<?php echo $_POST['txtnom']; ?>" name="txtnom2" />

<input type="hidden" value="<?php echo $_POST['txtpnom']; ?>" name="txtpnom2" />

<input type="hidden" value="<?php echo $civilite2; ?>" name="txtcivilite2" />

<input type="hidden" value="<?php echo $_POST['mail']; ?>" name="mail2" />

<input type="hidden" value="<?php echo $_POST['txttel']; ?>" name="txttel12" />
<input type="hidden" value="<?php echo $_POST['txttel2']; ?>" name="txttel22" />
<input type="hidden" value="<?php echo $_POST['txttel3']; ?>" name="txttel32" />
<input type="hidden" value="<?php echo $_POST['txttel4']; ?>" name="txttel42" />
<input type="hidden" value="<?php echo $_POST['txttel5']; ?>" name="txttel52" />

<input type="hidden" value="<?php echo $_POST['txtmsg']; ?>" name="txtmsg2" />

<br />
<table>
<tr>
<td><center><input type="submit" name="valider" value="Envoyer" /></center></td>
<td><center><input type="button" value="Annuler" onClick='self.close()' /></center></td>
</tr>
</table>
</form><br />
</div>
</body>

--------------------------->confirmer.php (qui détermine l'envoi ou non après choix dans la pop-up)

<?php
if (isset($_POST['valider']))
{
echo '<script>alert("test1");</script>';

$to = "truk@truk.truk";
$header="";

if (isset($_POST['mail2']) && !empty($_POST['mail2']))
{
$mail = $_POST['mail2'];
}
else
{
$mail = "";
}

if (isset ($_POST['txttel12']) && isset($_POST['txttel22']) && isset($_POST['txttel32']) && isset($_POST['txttel42']) && isset($_POST['txttel52']) && !empty($_POST['txttel12']) && !empty($_POST['txttel22']) && !empty($_POST['txttel32']) && !empty($_POST['txttel42']) && !empty($_POST['txttel52']))
{
$tel = $_POST['txttel12'].$_POST['txttel22'].$_POST['txttel32'].$_POST['txttel42'].$_POST['txttel52'];
}
else
{
$tel = "";
}

if (isset($_POST['txtnom2']) && !empty($_POST['txtnom2']) && isset($_POST['txtpnom2']) && !empty($_POST['txtpnom2']))
{
$nom = $_POST['txtnom2'];
$pnom = $_POST['txtpnom2'];
if ($mail != "" && $tel = "")
{
$stock = 1;
}
else
{
if ($mail =="" && $tel != "")
{
$stock = 2;
}
else
{
if ($mail != "" && $tel != "")
{
$stock = 3;
}
else
{
$stock = 4;
}
}
}
}
else
{
$stock = 5;
}

if ($stock != 5)
{
if (isset($_POST['txtcivilite2']) && !empty($_POST['txtcivilite2']))
{
$civilite = $_POST['txtcivilite2'];
}
else
{
$civilite = "";
}

if(isset($_POST['txtmsg2']) && !empty($_POST['txtmsg2']))
{
$msg = $_POST['txtmsg2'];
}
else
{
$msg="";
}


switch ($stock)
{
case '1': // nom + pnom + mail
$header = $nom." ".$pnom." <".$mail.">";
$header ="From: ".$header."\r\n"."Reply-To: ".$header."\r\n"."X-Mailer: PHP/".phpversion();
mail ($to, $msg, $header);
echo '<script>alert("votre message à bien été envoyé.")</script>';
echo '<script>window.location.replace("../index.php?num=2");</script>';
break;

case '2': // nom + pnom + tel
$header = $nom." ".$pnom." <".$tel.">";
$header ="From: ".$header."\r\n"."Reply-To: ".$header."\r\n"."X-Mailer: PHP/".phpversion();
mail ($to, $msg, $header);
echo '<script>alert("votre message à bien été envoyé.")</script>';
break;

case '3': // nom + pnom + mail + tel
$header = $nom." ".$pnom." <".$mail."> "."<".$tel.">";
$header ="From: ".$header."\r\n"."Reply-To: ".$header."\r\n"."X-Mailer: PHP/".phpversion();
mail ($to, $msg, $header);
echo '<script>alert("votre message à bien été envoyé.")</script>';
break;
}
}
}
elseif($_POST['annuler'])
{

}
?>

Et la fonction js que j' "include" dans chaque page

function check() //Vérification des champs (envoi du mail) + ouverture dans un pop-up.
{
var msg = "";

if ((document.formconfirm.mail.value != "") || (document.formconfirm.mail.value != "Votre adresse e-mail"))
{
indexAroba = document.formconfirm.mail.value.indexOf('@');
indexPoint = document.formconfirm.mail.value.indexOf('.');
if ((indexAroba < 0) || (indexPoint < 0))
{
document.formconfirm.mail.style.backgroundColor = "#4343FE";
msg += "Le mail est incorrect\n";
}
}
else
{
if ((document.formconfirm.mail.value == "") || (document.formconfirm.mail.value == "Votre adresse e-mail"))
{
if ((document.formconfirm.txttel.value == "") || (document.formconfirm.txttel2.value == "") || (document.formconfirm.txttel3.value == "") || (document.formconfirm.txttel4.value == "") || (document.formconfirm.txttel5.value == ""))
{
document.formconfirm.mail.style.backgroundColor = "#4343FE";
msg += "Veuillez saisir votre mail.\n";
}
}
}

if ((document.formconfirm.txtnom.value == "") || (document.formconfirm.txtnom.value == "Votre nom"))
{
msg += "Veuillez saisir votre nom\n";
document.formconfirm.txtnom.style.backgroundColor = "#4343FE";
}

if ((document.formconfirm.txtpnom.value == "") || (document.formconfirm.txtpnom.value == "Votre prénom"))
{
msg += "Veuillez saisir votre prenom\n";
document.formconfirm.txtpnom.style.backgroundColor = "#4343FE";
}

if (document.formconfirm.lstcivilite.value == 0)
{
msg += "Veuillez sélectionner votre civilité\n";
document.formconfirm.lstcivilite.style.backgroundColor = "#4343FE";
}

if ((document.formconfirm.txttel.value == "") || (document.formconfirm.txttel2.value == "") || (document.formconfirm.txttel3.value == "") || (document.formconfirm.txttel4.value == "") || (document.formconfirm.txttel5.value == ""))
{
if ((document.formconfirm.mail.value == "") || (document.formconfirm.mail.value == "Votre adresse e-mail"))
{
msg += "Veuillez vérifier votre numéro de téléphone\n";
if (document.formconfirm.txttel.value == "")
{
document.formconfirm.txttel.style.backgroundColor = "#4343FE";
}
if (document.formconfirm.txttel2.value == "")
{
document.formconfirm.txttel2.style.backgroundColor = "#4343FE";
}
if (document.formconfirm.txttel3.value == "")
{
document.formconfirm.txttel3.style.backgroundColor = "#4343FE";
}
if (document.formconfirm.txttel4.value == "")
{
document.formconfirm.txttel4.style.backgroundColor = "#4343FE";
}
if (document.formconfirm.txttel5.value == "")
{
document.formconfirm.txttel5.style.backgroundColor = "#4343FE";
}
}
}

if (document.formconfirm.txtmsg.value == "")
{
msg += "Veuillez saisir votre message\n";
document.formconfirm.txtmsg.style.backgroundColor = "#4343FE";
}

if (msg != "")
{
alert(msg);
window.location.replace("../index.php?num=5");
return(false);
}
else
{
my_form = eval(document.formconfirm)
alert("dfjkghdfjkghdfjkghdfjkgdf");
window.open('PHP/pageconfirm.php', 'popup', 'height=1000,width=1000,menubar=no,toolbar=no,location=no,status=no,scrollbars=no');
my_form.target = "popup";
my_form.submit();
return(true);
}

qui permet donc de vérfier tout les champs


Bon voilà vous avez tout...je sais que cela fait mais si c la seule chose pour expliquer mn souci..merci bcp
0
Je ne sais pas si ca viens d'une erreur de copier coller, mais il manque une } à ton javascript.

une fois rajouté, qd je clique sur "prévisualiser" j'ai le message "dfjkghdfjkghdfjkghdfjkgdf" qui s'affiche et une popup est bien ouverte avec les données saisies.
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
1 juil. 2010 à 15:27
ça aurait été trop beau : /

erreur de copié collé..c'était bien à la fin ? 2 '}' au lieu d'un ?

Sinon les erreurs st diverses, la pop-up fonctionne bien dans certains cas, cela dépend du action du formulaire principal..

C'est comme un cercle vicieux cette affaire, un truck fonctionne mais pas un autre, mais si je retire une chose, ici l'action, ce qui ne marchai pas fonctionne, mais ce qui fonctionnais ne fonctionne plus !! à s'en arracher les cheveux..heureusement ils sont trop court...lol.chui désespéré.
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
Modifié par necro27 le 1/07/2010 à 15:38
mais sinon, lorsque tu valide n'avoir rien saisi, est-ce que cela te met un message d'erreur ? enfin du moin est-ce qu'il aparait une erreur dans l'ouverture des pages?
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
1 juil. 2010 à 15:55
je suis en train de chercher, vis a vis de la fonction js, elle retourne la valeur "true" si c'est bon sinon "false"

Ne peut-on pas récupérer cette valeur, et si la fonction retourne true, on affiche dans le action="pagesouhaité" , sinon si faux, nous mettons action à vide?
je cherche mais pas beaucoup de sites français à ce sujet :/
0