des boucles qui permettent de stocker un quizz et ses questions
Posté : 03 août 2016, 19:53
Bonsoir a tous et a toutes
!
J'ai un std Class ObJect qui se presente comme suit:
j'ai travaille toute la journee mais je n'arrive toujours pas a stocker toute mes questions dans les deux tables suivantes:
table 1: tests
test_id (auto increment)
nomtest
table questions
idquestion (auto increment)
test_id (cle etrangere)
question
reponse
premier leurre
deuxieme leurre
troiseme leurre
J'ai les deux foreach loop suivantes :
le premier probleme est que ce code ne stocke qu'une seule question (la derniere) et le truc c'est que si je mets les insertion 1 et deux dans les foreach loop il ya insertion multiples ce dont je ne veux pas. Toute aide sera la bienvenue. Merci de m'avoir lue!
J'ai un std Class ObJect qui se presente comme suit:
Code : Tout sélectionner
std Class Object
(
[Quizz]=>Array
(
[0]=>std Class Object
(
[Nom du quizz]=>quizz un
)
[1] => std Class Object
(
[question]=>Qui est Jesus Christ?
[reponse]=>Le Sauveur et Seigneur de l'humanite
[premier leurre]=>un prophete
[deuxieme leurre]=>un ange
[troisieme leurre]=>un homme
)
[2]=>std Class Object
(
[question]=>Ou irons nous apres la mort?
[reponse]=>Au paradis
[premier leurre]=>en enfer
[deuxieme leurre]=>nulle part
[troisieme leurre]=>au pays des morts
)
)
)
table 1: tests
test_id (auto increment)
nomtest
table questions
idquestion (auto increment)
test_id (cle etrangere)
question
reponse
premier leurre
deuxieme leurre
troiseme leurre
J'ai les deux foreach loop suivantes :
Code : Tout sélectionner
$mon_test = $mon_object->Quizz; // Jaccede a la valeur de la propriete quizz de mon objet
for($q= 0; $q < count($mon_test); $q++){ // je parcooure mon tableau
foreach($mon_test[$q] as $k=>$v){
if($k == "Nom du test"){
$stocknom = $mon_test[$q]->Nom du test;
}
if($k == "Question"){
$stockquestion = $mon_test[$q]->Question;
}
if($k == "Reponse"){
$stockreponse = $mon_test[$q]->Reponse;
}
if($k == "premier leurre"){
$stockleurre1 = $mon_test[$q]->premier leurre;
}
if($k == "deuxieme leurre"){
$stockleurre2 = $mon_test[$q]->deuxieme leurre;
}
if($k == "troisieme leurre"){
$stockleurre3 = $mon_test[$q]->troisieme leurre;
}
}
}
$insertion1 = "INSERT INTO quizz (nom du quizz)VALUES ('$stocknom')";
if ($my_db_object->query($insertion1) === true){
$last_id = $my_db_object->insert_id;// jen ai besoin pour remplir la cle idtest qui me dit quelle question appartient a quel test
$succes = "donnees sauvegardees";
}
else{
$failure = "Erreur: " .$insertion1.$my_db_object->error;
}
$insertion2 = "INSERT INTO questions SET
idtest = '".$last_id."',
question = '".$stockquestion."',
reponse= '".$stockreponse."',
incorrect1 = '".$stockleurre1."',
incorrect2 = '".$stockleurre2."',
incorrect3 = '".$stockleurre3."'";
if ($my_db_object->query($insertion2) === true) {
$succes = "donnees sauvees";
}
else {
$echec = "Erreur: " .$insertion2.$my_db_object->error;
}