Problème popup et submit

Eléphanteau du PHP | 40 Messages

09 mars 2006, 16:35

Bonjour, avant tout je préviens j'ai utilisé :google:, mais seulement je n'ai vraiment pas compris comment utilisé GET etc.. dans ce cas.

Donc voila, afin de vérifier dans 1 formulaire si le nom de fiche ( champ de ma table ) est déja utilisé j'utilise 1 bouton "Test".
<input name="testnom" type="submit" class="bouton" id="testnom"
					  onclick="javascript:popup('validationnomfiche.php')" value="Test"target="_blank"/>
il renvoit donc vers la fonction:
<script language="javascript"> 
function popup(fic) 
	{
	wchoix=window.open(fic,'Choisir','width=175,height=5,top=290,left=400');  
	document.form2.submit();
	} 
</script>
seulement dans mon 'validationnomfiche.php'

et dans ma variable POST rien ne s'affiche
<?php
include ('secure.php');
//connection à la base
include ('mysqlconnect.php');
$nomfiche = $_POST['nomfiche'];
echo $nomfiche;
?>
<br>
<?php
$sql = "SELECT nomFiche 
		FROM fiches 
		WHERE nomFiche = '".$nomfiche."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 
$data = mysql_fetch_array($req);  
if(empty($nomfiche))
	{
	echo'Vous avez oublié de remplir le nom de fiche';
	}
	else if($data['nomFiche'] == $nomfiche)
		{
		echo'Nom de fiche déjà utilisé!';
		}else{
			echo'Nom de fiche libre';
			}
?>
<title>Test</title>
je suis sur que cela vien de ma fonction popup, mais je ne sais pa quoi ajouté, merci :)

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

09 mars 2006, 17:11

Quelques remarques :

Code : Tout sélectionner

<input name="testnom" type="submit" // si ton bouton sert juste à ouvrir la popup et pas à envoyer un formulaire, utilise plutot un type="button" submitclass="bouton" id="testnom" onclick="javascript:popup('validationnomfiche.php')" value="Test" target="_blank" // pas de balise target dans un input.. au mieux dans le tag <form> ou dans un lien />
Après l'ouverture de ta popup, tu soumet le formulaire form2

Code : Tout sélectionner

document.form2.submit();
Tu peux nous en montrer un peu plus ? est ce qu'il est bien en method=post et en target de ta popup ? et surtout est ce bien lui qui contient le champ nomfiche ? :)

Eléphanteau du PHP | 40 Messages

09 mars 2006, 17:32

en faite j'utilise plusieurs boutons dans1 meme forumaire j'utilise donc des fonctions js.
<script language="javascript"> 
function popup(fic) 
	{ 
	wchoix=window.open(fic,'Choisir','width=175,height=5,top=290,left=400');  
	document.form2.submit();
	} 
</script>
<script language="JavaScript" type="text/javascript"> 
function testsubmit1()
	{
    if (document.form1.action=="") return false; 
return true;
	} 
function gopage1(page) 
	{
document.form1.action = page; 
document.form1.submit();
	} 
</script>
<script language="JavaScript" type="text/javascript"> 
function testsubmit2()
	{
    if (document.form2.action=="") return false; 
return true;
	} 
function gopage2(page) 
	{
document.form2.action = page; 
document.form2.submit();
	}  
</script>
et mes formulaires:
<form id="form1" name="form1" method="post" action="" onsubmit="return testsubmit1()">
      <form id="form2" name="form2" form="form" action="" onsubmit="return testsubmit2()"  
	  method="post" enctype="multipart/form-data" >
sachant que le bouton se trouve dans le form 2


j'ai donc corrigé
					  <label>
					  <input name="testnom" type="button" submitclass="bouton" id="testnom" 
					  onclick="javascript:popup('validationnomfiche.php')" value="Test"/>
					  </label></th>

Mammouth du PHP | 1967 Messages

09 mars 2006, 18:19

je conseille plutot l'utilisation d'un seul formulaire et de bouton de nom différent, et une seul page de traitement de donnée

le début de la page est du style
if (isset($_POST["nom input1"]))
{fonction1();}
elseif (isset($_POST["nom input2"]))
{fonction2();}
else
{die("erreur";}
enfin c'est toi qui décide
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube

re-VinceDjs
Invité n'ayant pas de compte PHPfrance

10 mars 2006, 10:51

oui mais ca ne résoud pas mon probleme de submit pour ma popup :)

vincedj
Invité n'ayant pas de compte PHPfrance

10 mars 2006, 11:13

Probleme résolu
					  <input name="testnom" type="button" class="bouton" id="testnom" 
                 		onclick="javascript:popup('validationnomfiche.php')" value="Test" />
<script language="javascript"> 
function popup(fic) 
   { 
   nomfiche = document.getElementById('nomfiche').value; 
   window.open(fic + '?nomfiche='+nomfiche,'Choisir','width=175,height=5,top=290,left=400');  
   } 
</script>
<?php 
include ('secure.php'); 
//connection à la base 
include ('mysqlconnect.php'); 
$nomfiche = $_GET['nomfiche']; 
echo $nomfiche; 
?> 
<br> 
<?php 
$sql = "SELECT nomFiche 
      FROM fiches 
      WHERE nomFiche = '".$nomfiche."'"; 
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 
$data = mysql_fetch_array($req); 
if(empty($nomfiche)) 
   { 
   echo'Vous avez oublié de remplir le nom de fiche'; 
   } 
   else if($data['nomFiche'] == $nomfiche) 
      { 
      echo'Nom de fiche déjà utilisé!'; 
      }else{ 
         echo'Nom de fiche libre'; 
         } 
?>