Vérifier un champ avec requete sql suite à un onchange...

Eléphant du PHP | 183 Messages

10 août 2006, 11:08

je viens d'essayer : dans ma popup j'ai juste le message "Voici la référence :" et rien d'autre j'ai meme essayé en mettant POST a la place de get et rien...

Eléphant du PHP | 353 Messages

10 août 2006, 11:10

pq mets tu ceci => style="visibility:hidden" dans ton input ?

le popup vient au submit de ton formulaire ?

Comme fonctionne ton truc en gros ?

Eléphant du PHP | 183 Messages

10 août 2006, 11:15

Parce ce champ est un champ qui apparait suite a un choix ds une liste deroulante qui elle meme est alimenté par une base de donnée...
Mais ça gene pas le hidden puisque si un ref est envoyé via ce champ c'est qu'il est visible
je te montre le code pour info mais pas important pout notre truc
<?php

*Type de r&eacute;alisation :
<select name="type_realisation" onChange="afficher1(this)">
<?php $connexion=mysql_connect("$hostname_dbprotect","$username_dbprotect","$password_dbprotect") or die("<p>Echec de connexion!");
mysql_select_db("$database_dbprotect", $connexion) or die ("<p>Echec de connexion à la base de donnée!");
$SQL4 = "SELECT id_menu,libelle,zone_texte FROM menu_deroulant WHERE id_menu='type_realisation'";
$res4 = mysql_query($SQL4);
while ($val4=mysql_fetch_array($res4) ) {
echo '<option value="'.$val4['zone_texte'].'">'.$val4['libelle'].'</option>\n';}
?>
</select>
<SCRIPT language="javascript">
<!--affiche une zone de texte si la liste déroulante est sur MODIFICATION -->
function afficher1(objet) {
	if (objet.value==1) {
		document.all["zone_realisation"].style.visibility="visible";
	} else {
		document.all["zone_realisation"].style.visibility="hidden";
	}
}
</SCRIPT>

<input type="text" name="zone_realisation" id="zone_realisation" value="Préciser réf. S5" size="15" style="visibility:hidden" onChange="window.open('controle_ref.php?id='+this.value,'ref','width=500,height=100,scrollbars=no')">

?>

Eléphant du PHP | 99 Messages

10 août 2006, 11:21

vaut mieux ne pas te prendre la tête avec ce que j'ai fais, mais concentre toi sur ton code de départ!

Eléphant du PHP | 183 Messages

10 août 2006, 11:26

Salut Cari, ton code peut peut être m'interessé quand meme ...envois par email sinon je regarderais ça. :-) a+

Eléphant du PHP | 353 Messages

10 août 2006, 11:29

Ajoute le or die("Erreur lors de la requête: ".mysql_error());


$SQL=mssql_query("SELECT GA_CODEARTICLE, GA_LIBELLE FROM ARTICLE WHERE GA_CODEARTICLE='".$ref_base."'", $connexion2) or die("Erreur lors de la requête: ".mysql_error());

Eléphant du PHP | 183 Messages

10 août 2006, 11:32

ok mais si ça marche deja pas avec
echo "Voici la référence:" .$_GET['zone_realisation'];

if ($_GET['zone_realisation']) {
$ref_base=$_GET['zone_realisation'];
echo $ref_base;
}

ça marchera pas plus avec mon script avec requete...

Eléphant du PHP | 353 Messages

10 août 2006, 11:37

Ok je viens de voir l'erreur ;)

<input type="text" name="zone_realisation" id="zone_realisation" value="Préciser réf. S5" size="15" style="visibility:hidden" onChange="window.open('controle_ref.php?zone_realisation='+this.value,'ref','width=500,height=100,scrollbars=no')">

Eléphanteau du PHP | 27 Messages

10 août 2006, 11:39

Juste pour info : vous changez le nom du paramètre que vous passez en GET. D'où l'impossiblité de la trouver sous le même nom :

<input type="text" name="zone_realisation" id="zone_realisation" value="Préciser réf. S5" size="15" style="visibility:hidden" onChange="window.open('controle_ref.php?id='+this.value,'ref','width=500,height=100,scrollbars=no')">

Voici donc la correction :

<input type="text" name="zone_realisation" id="zone_realisation" value="Préciser réf. S5" size="15" style="visibility:hidden" onChange="window.open('controle_ref.php?zone_realisation='+this.value,'ref','width=500,height=100,scrollbars=no')">

@+

Eléphanteau du PHP | 27 Messages

10 août 2006, 11:40

zut deux minutes de retard moi :)

Eléphant du PHP | 183 Messages

10 août 2006, 11:45

VIVE TIC TAC Impec ça marche, mais pourquoi c'est GET alors que mon formulaire est POST, c'est le javascript qui envois en GET?

MERCI BEAUCOUP A TOUS ET SURTOUT POUR CETTE FOIS A TICTAC :-) a+

Eléphant du PHP | 353 Messages

10 août 2006, 11:51

tu la passe en GET => ?zone_realisation='+this.value

Ton formulaire est p-e en POST mais la variable pour le popup en GET !!

Eléphanteau du PHP | 27 Messages

10 août 2006, 11:54

Quand tu ouvre une fenêtre avec un window.open tu n'envoi pas de formulaire (donc pas de POST). Par contre, dés que tu appel une adresse avec à la fin un truc genre :
?marub=mavaleur&monautrerub=monautrevalueur

Là tu passe des variables au format GET

Eléphant du PHP | 353 Messages

10 août 2006, 11:55

Ca va faber8 , on va pas se battre lol [-o<

Eléphanteau du PHP | 27 Messages

10 août 2006, 11:56

Désolé mais je trouvait pas ton explication très claire :wink: