Page 1 sur 1

impossible d'inserer une donnee issue d'une autre table

Posté : 07 mars 2006, 17:04
par fila
salut ! Je n'arrive pas à inserer la fonction au contact:
Je fais cela :
Dans mon formulaire d'insertionContact.htm--->
<select name="id_fonction" >
 <?php
$query = " SELECT id_fonction, fonction  FROM fonction order by fonction ";
$result = mysql_query($query) or die ("Requete '$query' impossible"); 
while($row = mysql_fetch_array($result))
{		
print"<option value=".$row[id_fonction].">".$row[fonction]."</option>";
}
?>
</select>
 Le reste sur insertion.php --->
 $id_fonction=$_POST["id_fonction"];
 $fonction=$_POST["fonction"];
 $nom=$_POST["nom"];
 $prenom=$_POST["prenom"];
 $email=$_POST["email"];
 $tel=$_POST["tel"];
 $adresse1=$_POST["adresse1"];
 $adresse2=$_POST["adresse2"];
 $code_postal=$_POST["code_postal"];
 $ville=$_POST["ville"];
 
 // Creation de la requete sql
 $sql="INSERT INTO contact (id_contact,id_fonction,fonction, nom, prenom, email, tel, adresse1, adresse2,code_postal, ville)
        VALUES ('','$id_fonction','$fonction','$nom','$prenom','$email','$tel','$adresse1','$adresse2','$code_postal','$ville')";
et ma requete sur la liste.php :
 $query=" SELECT id_fonction,fonction, nom, prenom, email,email,tel, adresse1, adresse2,code_postal,ville 
 FROM contact ,fonction  
 WHERE contact.id_fonction = fonction.id_fonction 
 AND fonction.id_fonction = ".$id_fonction;
 
merci par avance

Posté : 07 mars 2006, 17:53
par mario
Dans la partie // Creation de la requete sql je ne vois pas de mysql_query() pour exécuter la requête.
Je ne comprend pas ce que tu veux dire par:
salut ! Je n'arrive pas à inserer la fonction au contact
rencontres tu un message d'erreur ?

Posté : 07 mars 2006, 17:55
par Ryle
Yop!

Qu'est ce qui ne marche pas ? as-tu un message d'erreur ?
est ce que la ligne insérée est présente en base ou est ce que c'est avant l'insert que tu as un problème ?

Tu n'aurais pas un message d'erreur genre "ambiguous field" sur le "SELECT id_fonction" dont on ne sait pas s'il provient de fonction ou de contact ? (accessoirement tu ramènes aussi deux fois le champ mail)

impossible d'afficher la fonction dans le select du formulai

Posté : 07 mars 2006, 18:39
par fila
Salut et merci !

En fait dans le select,quand j'insere un contact la fonction ne s'affiche pas !
Suis-je clair ? :?

Re: impossible d'afficher la fonction dans le select du form

Posté : 07 mars 2006, 18:43
par Ryle
Suis-je clair ? :?
beeennn..... :)

- C'est dans ta liste déroulante que tu veux sélectionner la fonction qui a été attribuée ?
- C'est dans le traitement du SELECT sql qu'il y a un problème d'affichage ?
- L'insertion en base c'est elle faite correctement (déjà)

moi j'dis, peux mieux faire côté explications de ce que tu attends ;)

liste deroulante

Posté : 07 mars 2006, 20:18
par fila
Salut !
:oops: desole ne pas être clair !

C'est bien dans le select (liste deroulante) quesles fonctions ne s'affichent pas.

merci par avance

Posté : 07 mars 2006, 23:55
par Truc
essaie avec:
print"<option value=".$row['id_fonction'].">".$row['fonction']."</option>";
Pour que les variables soient considérées comme des chaines de caratères et non comme des pseudo-constantes.