Prob insert

najia87 Messages postés 44 Statut Membre -  
najia87 Messages postés 44 Statut Membre -
stp j ai un probleme de l insertion a la base de donnee le botton enregistrer ca marche pas aide moi pour trouve le probleme stp

<?php
$i=1;
$var=mysql_connect("localhost","root","");
mysql_select_db("test",$var);
$sql="select question from examen3";
$result=mysql_query($sql);
WHILE ($tab = mysql_fetch_array($result) )
{
echo "$i question numero: $i $tab[question] <br>";
?>
<DD><INPUT type="text" name="reponseb" ></font><p><font color="#ff0000"></DD>
<?php
$i++;
}
?>
<?php

if (isset($_get['reponseb']))
{$reponseb=$_get['reponseb'];

$var=mysql_connect("localhost","root","");

mysql_select_db("test",$var);

$req="INSERT INTO reponse3 ('reponseb')".
"VALUES ('".$reponseb."')";

$result = mysql_query($req);
}
<form>
<INPUT type="submit" value="enregistrer" name="enregistrer"></form>
?>
<?php
mysql_close();
?>

40 réponses

lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
on va yarriver t'inkiete

remplace les ' par "
je suis plus habitué aux syntaxe mysqli
0
najia87 Messages postés 44 Statut Membre 3
 
merci
oui j ai fait mai s ca marche pas
0
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
ah ca marche pas ????
pourqoui tu met <DD>
met plutot <td>
bon c'est p'etre pas de la que viens l'erreur mais au moins tu est dans les "normes"
autre chose tu met ca comme valeur

f (isset($_get['reponseb']))
{$reponseb=$_get['reponseb'];

dans ton formulaire si ma memoire est bonne c'est en methode post

donc remplace get par post et pense a commenter tes variables
exemple
echo 'valeur $post reponse'.$_post['reponseb'];

comme ca tu verra laquelle est pas passée ,et une fois que tu a cernée le pb de variable tu vire les echo
0
najia87 Messages postés 44 Statut Membre 3
 
merci bcp mais le probleme reste tjr le meme
dit est ce que je doit obligatoirement faire deux script php l un je fais l insertion et l autre je fait la selection est ce que est imopissible de faire la selection a partire d une table et l insertion a partir d une autre table et stp dedail pour moi comment ja vais ca car j arrive pas a prendre pourquoi mon code ca marche pas malgres que je sais qque mon code est correcte et dit moi c est ""require"" en php et merci
0

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

Posez votre question
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
bonsoir,oui c'est preferable de faire 2 fichiers ,surtout au debut.

Ensuite tu peut manipuler autant de table que tu veut,apres tout depend de ce que tu veut faire.

Parcontre il faut toujours veiller a travailler avec des variables qui sont declarée et des champsde tables qui existe aussi.

un exemplesi dans ta table tu a un champ qui s'appelle Id dans tes requetes ilfaut pas mettre id,pareil pour les variables $Id c'est pas la meme que $id.
parfois les erreurs viennent de la car y'a pas de raison que ton code ne marche pas si tu a tout bien suivi.

quand à include ou require les 2 fonctionne par contre c'est juste au niveau du traitement des erreurs.je pense qu'il faut mieux utilser require plutot qu'include
0
najia87 Messages postés 44 Statut Membre 3
 
merci lewis j pour vos aide j ai un autre probleme
maintenant j ai un formulaire sur cette formulaire affichra toute les question qui j ai enregistrer dans ma table et je veux faire un code qui me permet de supprimer le question que je veux supprimer
voila mon code que j ai fait mais ce code ca marche pas je ne sais pas ou le probleme ???
<?php
//code de suuppression de quiz des choix

$var=mysql_connect("localhost","root","");
mysql_select_db("base_donnee",$var);
$sql="delete * from question_choix ";
$result=mysql_query($sql);

?>
<?php
mysql_close();
?>

ma premiere formulaire est qui me donne les enregistremnt de ma table est
<form action="supprimerquestion.php" method="post">

<?php

$i=1;
$var=mysql_connect("localhost","root","");
mysql_select_db("base_donnee",$var);
$sql="select * from question_choix";
$result=mysql_query($sql);

WHILE ($tab = mysql_fetch_array($result) )
{
echo"<br><br> $i)$tab[1]<br><br>";?>
<SELECT name="<?php echo"$i";?>">
<OPTION value="<?php echo "$tab[2] "; ?>"><?php echo "$tab[2] "; ?> </option>
<OPTION value="<?php echo "$tab[3] "; ?>"><?php echo "$tab[3] "; ?> </option>
<OPTION value="<?php echo "$tab[4] "; ?>"><?php echo "$tab[4] "; ?> </option>
</select>
<input name="Submit" type="submit" " value="Suprimmer" />

$i++;
}
?>
<?php
mysql_close();
?>

r
je veux q quand je clic sur le bouton supprimer l enregistrement dite etre supprimer...
0
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
bonsoir,

modifi ton select comme ca
echo"<br><br> $i)$tab[1]<br><br>";?>

<form action="supprimerquestion.php" method="post"> 
<SELECT name="supprime_num">

<OPTION value="<?php echo "$tab[2] "; ?>"><?php echo "$tab[2] "; ?> </option>
<OPTION value="<?php echo "$tab[3] "; ?>"><?php echo "$tab[3] "; ?> </option>
<OPTION value="<?php echo "$tab[4] "; ?>"><?php echo "$tab[4] "; ?> </option>
</select>
<input name="Submit" type="submit" " value="Suprimmer" /> 


et dans ton fichier de traitement tu rajoute
$num=$_post['supprime_num'];

et ta requete va se transformer comme ça

$sql="delete * from question_choix WHERE numero='$num'";

explication:
j'ai nommé supprime_num ton select qui affiche tes données.
la question choisie est recuperéé (variable $_post['supprime_num']) puis la requete efface la ligne correspondante avec la clause where.
bien sur j'ai mis numero dans la requete maintenant tu adapteras en fonction de ta table.Si c'est l'ID que tu recupere la clause where va etre comme ca WHERE Id="$num"
0
najia87 Messages postés 44 Statut Membre 3
 
j ai fait ce que tu ma dit mais ca marche pas et la premier boton de supprimer n affiche pas dans la premier formulaire pour la premier question mais la 2eme et la 3eme et ..... s affiche
voila son code et merci bcp

<?php
//code de passage de quiz des choix
$i=1;
$var=mysql_connect("localhost","root","");
mysql_select_db("base_donnee",$var);
$sql="select * from question_choix";
$result=mysql_query($sql);

WHILE ($tab = mysql_fetch_array($result) )
{
echo"<br><br> $i)$tab[1]<br><br>";?>
<SELECT name="supprime_num>
<OPTION value="<?php echo "$tab[2] "; ?>"><?php echo "$tab[2] "; ?> </option>
<OPTION value="<?php echo "$tab[3] "; ?>"><?php echo "$tab[3] "; ?> </option>
<OPTION value="<?php echo "$tab[4] "; ?>"><?php echo "$tab[4] "; ?> </option>
</select>
<input type="submit" name="supprimer" value="supprrimer" />
<?php $icent=$i+100;
$imille=$i+1000;?>
<input type="hidden" name="<?php echo"$icent";?>" value="<?php echo "$tab[5] "; ?>"/>
<input type="hidden" name="<?php echo"$imille";?>" value="<?php echo "$tab[6] "; ?>"/>
<?php

$i++;
}
?>
<?php
mysql_close();
?>
et la formulaire de traitement ca marche pas aussi
0
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
re
modifie ton select comme ca

while($tab=mysql_fetch_array($result))
{
?>
<option value="<?php echo $tab["le_nom_de_ton_champ"] ?>" <?php echo $tab["le_nom_de_ton_champ"] ?>

</option>
}
quand je dis nom de ton champ c'est ce que tu veut voir affiché dans le select

si ca te met un message d'erreur c'est quoi comme message ?
0
najia87 Messages postés 44 Statut Membre 3
 
j ai regle se probleme maintenant select m a afiche tous ce que je veux mais le probleme qui me reste est quand je clic sur supprimer pour supprimer ca quit ca marche pas ????
mes enregistremnt dans ma base ca reste les meme rien ete supprimer??
merci
0
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
ta requet $sql="delete * from question_choix ";
$result=mysql_query($sql);

tu a bien rajouté where nom_du champ='$post du selet'

avant d'effectuer ta requete rajoute 2 lignes dans ton fichier de traitement
echo $_post[ la valeur recuprée par post]

et juste apres ta requete $sql
echo $sql;
comme ca tu verra quelle valeur est passée en post e t tu verra en clair ta requete (surtout pour le where ,tu verra si c'est bien ça)

et quand ca marche tu vire les lignes echo
0
najia87 Messages postés 44 Statut Membre 3
 
merci bcp lewis a propos de mon probleme j ai fait ce que tu m a dit et j ai trouvée que la valeur de la premiere formulaire ne recupere pas car quand j ai fait dans le fichier de traitement $sql dans l executuon me donne (?> delete * from question_choix WHERE id_question_qc='') j ai deduit que la valeure de select ne recupere pas a partir de la 1ere formulaire voila le code da ma 1ere formulaire :
<?php
//code de passage de quiz des choix
$i=1;
$var=mysql_connect("localhost","root","");
mysql_select_db("base_donnee",$var);
$sql="select * from question_choix";
$result=mysql_query($sql);

WHILE ($tab = mysql_fetch_array($result) )
{
echo"<br><br> $i)$tab[1]<br><br>";?>
<SELECT name="supprime_num">
<OPTION value="<?php echo "$tab[2] "; ?>"><?php echo "$tab[2] "; ?> </option>
<OPTION value="<?php echo "$tab[3] "; ?>"><?php echo "$tab[3] "; ?> </option>
<OPTION value="<?php echo "$tab[4] "; ?>"><?php echo "$tab[4] "; ?> </option>
</select>
<input type="submit" name="supprimer" value="supprrimer" />
<?php $icent=$i+100;
$imille=$i+1000;?>
<input type="hidden" name="<?php echo"$icent";?>" value="<?php echo "$tab[5] "; ?>"/>
<input type="hidden" name="<?php echo"$imille";?>" value="<?php echo "$tab[6] "; ?>"/>
<?php

$i++;
}
?>
<?php
mysql_close();
?>
0
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
bonjour,

modifie ton select comme ça

WHILE ($tab = mysql_fetch_array($result) )
{

<SELECT name="supprime_num">
<OPTION value="<?php echo "$tab[id_question_qc] "; ?>"><?php echo "$tab[id_question_qc] "; ?> </option>

</select> 
}


tu recupere les valeurs du champ id_question_qc et comme ça elle sera passé en varible post
0
najia87 Messages postés 44 Statut Membre 3
 
oui mais id_question_qc c est cle primaire (autoincrimente) dans ma table et moi dans ma formulaire j ai afiche les question et les choix de la question que j ai dans ma table voila les chant de la table sue laquel j ai fait la requete sql (id-question_qc ; choix1 ; choix2 ; choix3 )
si je fait se que tu m a dit select sera affiche seulement 1 et 2 et 3 carl le champ id_question_qc est un champ auto incrrimente et moi je veux aficher les question et leur choix pour les supprimer
0
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
ok j'ai compris..
donc en fait si tu n'affiche que la question ca devarit etre bon
il faut rentrer ta question dans ta table tu cree un champ ,par exemple nom_question (cree un camp varchar ,taille 255)

tu va affcicher le nom de la question dans ton select
WHILE ($tab = mysql_fetch_array($result) )
{

<SELECT name="supprime_num">
<OPTION value="<?php echo "$tab[id_question_qc] "; ?>"><?php echo "$tab[nom_question] "; ?> </option>

</select> 



Si tu veut afficher aussi les reponses il te faudra passer par un tableau car je pense pas que dans un select on puisse afficher plusieurs choix
0
najia87 Messages postés 44 Statut Membre 3
 
merci pour tout tu m a pas compris
car moi je veux aficher la question et les choix de la reponse de la question voila le code de la &ere formulaire
<?php
//code de passage de quiz des choix
$i=1;
$var=mysql_connect("localhost","root","");
mysql_select_db("base_donnee",$var);
$sql="select * from question_choix";
$result=mysql_query($sql);

WHILE ($tab = mysql_fetch_array($result) )
{
echo"<br><br> $i)$tab[1]<br><br>";?>
<SELECT name="supprime_num">
<OPTION value="<?php echo "$tab[2] "; ?>"><?php echo "$tab[2] "; ?> </option>
<OPTION value="<?php echo "$tab[3] "; ?>"><?php echo "$tab[3] "; ?> </option>
<OPTION value="<?php echo "$tab[4] "; ?>"><?php echo "$tab[4] "; ?> </option>
</select>
<input type="submit" name="<?php echo"$i";?>" value="supprrimer" />
<?php $icent=$i+100;
$imille=$i+1000;?>
<input type="hidden" name="supprimer" value="<?php echo "$tab[5] "; ?>"/>
<input type="hidden" name="<?php echo"$imille";?>" value="<?php echo "$tab[6] "; ?>"/>
<?php

$i++;
}
?>
<?php
mysql_close();
?>

le probleme que j ai est que select ne recupere aucun valeure pour cela ma requete sql (delete ) ca marche pas
0
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
si si j'ai compris..

pour que tu recupere ta question il faut que dans ton select la valeur <option value corresponde à ton ID.
c'est cette valeur qui est passée en post

donc il faut absolument que ton select soit fait comme ça
<OPTION value="<?php echo "$tab[id_question_qc]==> ca n'apparait pas a l'ecran mais c'est passé en POST

ensuite pour affchier dans la fenetre du select les reponses tu peut essayer un truc comme ça

WHILE ($tab = mysql_fetch_array($result) )
{

<SELECT name="supprime_num">
<OPTION value="<?php echo "$tab[id_question_qc] "; ?>"><?php echo "reponse 1".$tab[1].'|reponse 2'.$tab[2].'|reponse 3'.$tab[3] "; ?> </option>

</select>

autrement dit je concatene les 3 reponses dans la meme option.

mais il faut absolument que ce soit on id qui soit dans value
0
najia87 Messages postés 44 Statut Membre 3
 
bounjour lewis j ai fait ce que tu m a dit
mais maintenant quand je fait l execution il me donne l erreur dans la premiere formulaire dans cette ligne voila la ligne ou il me donne l erreure:'(<input type="submit" name="supprimer" value="supprrimer" />)
l erreur est (Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in c:\AppServ\www\srrr\questch_enseignant.php on line 105)
voila tout mon code :
<form action="supprimerquestion.php" method="post">
<p>

<?php
//code de passage de quiz des choix
$i=1;
$var=mysql_connect("localhost","root","");
mysql_select_db("base_donnee",$var);
$sql="select * from question_choix";
$result=mysql_query($sql);

WHILE ($tab = mysql_fetch_array($result) )
{
echo"<br><br> $i)$tab[1]<br><br>";?>
<SELECT name="supprime_num">
<OPTION value="<?php echo "$tab[id_question_qc] "; ?>"><?php echo "choix1".$tab[2].'|choix2'.$tab[3].'|choix3'.$tab[4] "; ?> </option>

</select>
<input type="submit" name="supprimer" value="supprrimer" />
<?php $icent=$i+100;
$imille=$i+1000;?>
<input type="hidden" name="<?php echo"$icent";?>" value="<?php echo "$tab[5] "; ?>" />
<input type="hidden" name="<?php echo"$imille";?>" value="<?php echo "$tab[6] "; ?>" />
<?php

$i++;
}
?>
<?php
mysql_close();
?>
0
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
bonjour,verifie bien la syntaxe fait attention aux ' et ".
d'autre part il n'y a pas de balise <form action et </form entre ton select

WHILE ($tab = mysql_fetch_array($result) )
{
?>
<form action="ton_fichier_de traitement">
<SELECT name="supprime_num">
<OPTION value="<?php echo $tab["id_question_qc"] ?>"><?php echo "choix1".$tab[2]."|choix2".$tab[3]."|choix3".$tab[4] "; ?> 
</option>

</select> 
</form>


je t'ai corrigé et viré cette ligne echo"<br><br> $i)$tab[1]<br><br>";?>
0
najia87 Messages postés 44 Statut Membre 3
 
pardon mais il me reste que pas baucoup pour la setanance stp aide moi
j ai fait ce que tu m a dit mais il me donne le probleme dans cette ligne je ne sais pas pourquoi
la ligne ou l erreur(<OPTION value="<?php echo "$tab["id_question_qc"] "; ?>"> <?php echo "choix1".$tab[2]."|choix2".$tab[3]."|choix3".$tab[4] ; ?> </option>)

lerreur est(Parse error: syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in c:\AppServ\www\srrr\questch_enseignant.php on line 104))

<?php
//code de passage de quiz des choix
$i=1;
$var=mysql_connect("localhost","root","");
mysql_select_db("base_donnee",$var);
$sql="select * from question_choix";
$result=mysql_query($sql);

WHILE ($tab = mysql_fetch_array($result) )
?>

<form action="supprimerquestion.php" method="post">
echo"<br><br> $i)$tab[1]<br><br>";
<SELECT name="supprime_num">
<OPTION value="<?php echo "$tab["id_question_qc"] "; ?>"> <?php echo "choix1".$tab[2]."|choix2".$tab[3]."|choix3".$tab[4] ; ?> </option>

</select>
</form>
<input type="submit" name="supprimer" value="supprrimer" />
<?php $icent=$i+100;
$imille=$i+1000;?>
<input type="hidden" name="<?php echo"$icent";?>" value="<?php echo "$tab[5] "; ?>" />
<input type="hidden" name="<?php echo"$imille";?>" value="<?php echo "$tab[6] "; ?>" />
<?php

$i++;
}
?>
<?php
mysql_close();
?>

si tu veux et si ca ne te derrange pas donne moi ton msn et je vais t envoyer mes duex fichier pour voir clairement mon code
0
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
ok mais le msn je m'en sert pas beaucoup tu peut l'envoyer à mon mail de mon site

mon site http://milsodor.no-ip.org
le mail aiph34@orange.fr
0
najia87 Messages postés 44 Statut Membre 3
 
merci lewis j ai envoyee mes 2fichier a ton mail
0