PHP/ Mysql Problème => insert into

Résolu/Fermé
Urbanspirit Messages postés 93 Date d'inscription jeudi 20 août 2009 Statut Membre Dernière intervention 6 septembre 2013 - 16 avril 2010 à 12:21
Urbanspirit Messages postés 93 Date d'inscription jeudi 20 août 2009 Statut Membre Dernière intervention 6 septembre 2013 - 23 mai 2010 à 12:17
salut salut tous le monde ^^

Je suis actuellement en train de créer un site web en php...
j'ai créer sur se site un formulaire permettant d'ajouter des offres de stages qui s'inscrirait dans la base...tout marche sauf l'insert into..
je m'explique: j'ai tester mon formulaire...la première offre que j'envoie via le formulaire fonctionne et est inscrite dans la table "offre"

Mais lorsque je relance le formulaire et que j'entre une seconde offre et que je l'envoi elle n'est pas inscrite dans la base...il y a seulement la première offre qui est mise. Donc j'aimerai savoir si je me suis tromper dans mon code ou non...car je tourne en rond la...


Voici le code de mon formulaire
<form action="Maj-offres.php" method="post">
 <h5>Veuillez remplir ce formulaire afin de mettre en ligne votre offre de stage:</h5>
        <p>
		Choississez le nom de votre entreprise:<select name="ent_num">
	<?php					
$connexion=mysql_connect("127.0.0.1","root","");
								$bdd=mysql_select_db("base_tdus_mbon",$connexion);												
$Req="SELECT ent_num, ent_nom from entreprise where ent_num>1  order by 1 ; ";
$reponse=mysql_query($Req);
while($stg=mysql_fetch_array($reponse))
echo "<option value='".$stg['ent_num']."'>".$stg['ent_nom']."";
?>	
</select>
<br /><br />
<label for="Duree">Durée du stage:</label> : <input type="text" name="duree" id="duree" /><br /><br />
        <label for="Description">Description du stage:</label> :<br />
<textarea cols='50' rows='10' name="descri" id="descri" class='tbox'>
</textarea><br /><br />

        <input type="submit" value="Envoyer" />
	</p>
    </form>






et le code php de la page de resulat

<?php

$connexion=mysql_connect("127.0.0.1","root","");
								$bdd=mysql_select_db("base_tdus_mbon",$connexion);	
$ent=$_POST['ent_num'];
$dur=$_POST['duree'];
				$dec=$_POST['descri'];												
$Req3='INSERT INTO 'offre' VALUES("","'.$ent.'","'.$dur.'","'.$dec.'")';
$reponse3=mysql_query($Req3);
mysql_close();
?>





Merci de me proposer des solutions et de m'aider ;)
A voir également:

6 réponses

Giorgiolino Messages postés 253 Date d'inscription vendredi 15 mai 2009 Statut Contributeur Dernière intervention 2 mars 2015 52
Modifié par Giorgiolino le 26/04/2010 à 23:29
Bonjour,

à mon avis si ça a fonctionné la première fois, ton problème ne vient pas de la syntaxe de ton code (les histoires de simple/double quotes, etc).

Par contre je te soupçonne d'avoir défini le champ OFFRE_NUM comme clé primaire de ta table, mais aussi d'avoir fait la première insertion en mettant une chaîne vide comme valeur pour ce champ. Or là tu veux insérer une nouvelle offre avec ce champ encore vide (soit pareil qu'avant).

Ce que le SGBD voit c'est que tu essayes de créer un enregistrement avec une clé primaire qui existe déjà, raison pour laquelle il refuse de te l'insérer. A ce moment-là tu devrais lui dire merci, corriger ton erreur et lui promettre de ne plus recommencer.

Bon courage.


"La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information"
Albert Einstein
2
LegGohan Messages postés 200 Date d'inscription vendredi 21 septembre 2007 Statut Membre Dernière intervention 2 août 2017 54
16 avril 2010 à 12:25
qu'elle réponse te renvoi mysql ???
0
slt mon ami!

je voix que t'a mi une erreur,au lie de:
$Req3='INSERT INTO 'offre' VALUES("","'.$ent.'","'.$dur.'","'.$dec.'")';

fait ça:
$Req3="INSERT INTO offre VALUES('','".$ent."','".$dur."','".$dec.'")";

puis essaye et répond
0
Urbanspirit Messages postés 93 Date d'inscription jeudi 20 août 2009 Statut Membre Dernière intervention 6 septembre 2013 22
16 avril 2010 à 12:57
Merci de la réponse ^^

Sa ne change rien en fait ..car a la base j'avais juste mit offre sans quote.. j'ai rajouté les quote justement en pensant que sa réglerai mon problème


j'ai aussi essayer le insert into de cette façon:

$Req3="INSERT INTO offre (OFFRE_NUM, ENT_NUM, Duree_OFFRE, THEME_OFFRE )VALUES ('','".$ent."','".$dur."','".$dec.'")"; 


sans succès....
mais encore merci d'avoir porter attention a mon problème :o
0

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

Posez votre question
Urbanspirit Messages postés 93 Date d'inscription jeudi 20 août 2009 Statut Membre Dernière intervention 6 septembre 2013 22
26 avril 2010 à 18:43
Petit UP... ^^
0
Urbanspirit Messages postés 93 Date d'inscription jeudi 20 août 2009 Statut Membre Dernière intervention 6 septembre 2013 22
23 mai 2010 à 12:17
Merci beaucoup ^^

c'était sa en fait ^^


et bah j'aurai bine tourné en rond pour un truc aussi simple que sa XD

merci encore ^^
0