diff --git a/BddCorrect/BDD/OracleDb.php b/BddCorrect/BDD/OracleDb.php index 4cffc9d..eac856b 100644 --- a/BddCorrect/BDD/OracleDb.php +++ b/BddCorrect/BDD/OracleDb.php @@ -12,8 +12,8 @@ class OracleDb { private $conn; function __construct() { - //$this->conn = oci_connect('u_prems', '123456', 'localhost/orcl'); - $this->conn = oci_connect('meelaichao', 'meelaichao', 'kirov:1521/kirov'); + $this->conn = oci_connect('u_prems', '123456', 'localhost/orcl'); + //$this->conn = oci_connect('meelaichao', 'meelaichao', 'kirov:1521/kirov'); //$this->createRandomTables(); } diff --git a/BddCorrect/BDD/SqliteDb.php b/BddCorrect/BDD/SqliteDb.php index 3665e87..27c9da0 100644 --- a/BddCorrect/BDD/SqliteDb.php +++ b/BddCorrect/BDD/SqliteDb.php @@ -145,7 +145,7 @@ class SqliteDb extends SQLite3 function createQCM(){ $this->exec('DROP TABLE Qcm'); - $this->exec('CREATE TABLE Qcm ( numQcm NUMBER, nom STRING,type STRING)'); + $this->exec('CREATE TABLE Qcm ( numQcm NUMBER, nom STRING,type STRING,introduction STRING)'); $this->exec('DROP TABLE QcmQuestion'); $this->exec('CREATE TABLE QcmQuestion ( numQuestion NUMBER,numQcm NUMBER, question STRING,bareme NUMBER)'); @@ -157,7 +157,7 @@ class SqliteDb extends SQLite3 $this->exec('CREATE TABLE QcmCorrection (numQcm NUMBER, numQuestion NUMBER, numReponse NUMBER)'); //------QCM sql --------------// - $this->exec("INSERT INTO Qcm VALUES(1,'sql','vraifaux')"); + $this->exec("INSERT INTO Qcm VALUES(1,'sql','vraifaux','intro sql')"); //Question 1 $this->exec("INSERT INTO QcmQuestion VALUES(1,1,'Ceci est la question 1',10)"); @@ -180,7 +180,7 @@ class SqliteDb extends SQLite3 $this->exec("INSERT INTO QcmCorrection VALUES(1,2,1)"); //------QCM EPSWORTH --------------// - $this->exec("INSERT INTO Qcm VALUES(2,'EPSWORTH','test')"); + $this->exec("INSERT INTO Qcm VALUES(2,'EPSWORTH','test','intro epsworth')"); //Question 1 $this->exec("INSERT INTO QcmQuestion(numQuestion,numQcm,question) VALUES(1,2,'Ceci est la question 1')"); @@ -282,13 +282,14 @@ class SqliteDb extends SQLite3 return true; } - function ajouterQCM($numQcm,$numQuestion,$consigne,$choix,$reponses){ + function ajouterQCM($numQcm,$numQuestion,$consigne,$choix,$reponses,$bareme){ if($this->verificationExistenceQCM($numQcm,$numQuestion)) return false; - $qt = "INSERT INTO QcmQuestion VALUES(?,?,?,20)"; + $qt = "INSERT INTO QcmQuestion VALUES(?,?,?,?)"; $prp=$this->prepare($qt); $prp->bindParam(1, $numQuestion); $prp->bindParam(2, $numQcm); $prp->bindParam(3, $consigne); + $prp->bindParam(4, $bareme); $prp->execute(); $i=1; @@ -322,7 +323,6 @@ class SqliteDb extends SQLite3 $prp->bindParam(2, $numQcm); $prp->bindParam(3, $consigne); $prp->execute(); - $i=1; foreach($choixEtPoints as $c ){ diff --git a/BddCorrect/DAL/QCMGateway.php b/BddCorrect/DAL/QCMGateway.php index 048ff7a..a9fb672 100644 --- a/BddCorrect/DAL/QCMGateway.php +++ b/BddCorrect/DAL/QCMGateway.php @@ -34,7 +34,7 @@ class QCMGateway { $tabQuestions[] = new QuestionQCM($q['numQuestion'],$q['question'],$tabReponses,$q['bareme']); } - $tabQcm[] = new QCM($qcm['numQcm'], $qcm['nom'], $qcm['type'], $tabQuestions) ; + $tabQcm[] = new QCM($qcm['numQcm'], $qcm['nom'], $qcm['type'], $tabQuestions, $qcm['introduction']) ; } //die(print_r($tabQcm, true )); diff --git a/BddCorrect/Traitement/AjoutDemonstration.php b/BddCorrect/Traitement/AjoutDemonstration.php index 2b08b34..ef58054 100644 --- a/BddCorrect/Traitement/AjoutDemonstration.php +++ b/BddCorrect/Traitement/AjoutDemonstration.php @@ -22,11 +22,12 @@ else { $numDemo = $reponseRow['count(*)'] + 1; if(isset($_GET['modif'])){ - $db->supprimerDemonstration($_GET['chapitre'], $numDemo); + $numDemo = $_GET['numDemo']; + $db->supprimerDemonstration($_GET['chapitre'], $_GET['numDemo']); } - $isAdd = $db->ajouterDemonstration($_GET['bdd'],$_GET['chapitre'],$numDemo,$_GET['description'], $_GET['reponse']); + $isAdd = $db->ajouterDemonstration($_GET['bdd'],$_GET['chapitre'], $_GET['numDemo'],$_GET['description'], $_GET['reponse']); if(!$isAdd){ echo 'ERREUR : la combinaison (numéro de chapitre, numéro de démonstration) existe déjà dans la bdd'; } diff --git a/BddCorrect/Traitement/AjoutQCM.php b/BddCorrect/Traitement/AjoutQCM.php index 0a890b4..c040f18 100644 --- a/BddCorrect/Traitement/AjoutQCM.php +++ b/BddCorrect/Traitement/AjoutQCM.php @@ -13,11 +13,27 @@ $countRow = $result->fetchArray(); if($_GET['nomQcm'] == 'existe' && $countRow['count(*)'] == 0){ exit("Le numéro de qcm n'existe pas : veuillez remplir le champ 'Nom du Qcm' ou utiliser un numéro de qcm existant"); } +else if($_GET['nomQcm'] !== 'existe' && $countRow['count(*)'] !== 0){ + $query = $db->prepare('UPDATE Qcm SET nom=? WHERE numQcm= ?'); + $query->bindParam(1, $_GET['nomQcm']); + $query->bindParam(2, $_GET['numQcm']); + $result = $query->execute(); + +} else if($countRow['count(*)'] == 0){ - $query = $db->prepare('INSERT INTO Qcm VALUES(?,?,?)'); + $query = $db->prepare('INSERT INTO Qcm VALUES(?,?,?,?)'); $query->bindParam(1, $_GET['numQcm']); $query->bindParam(2, $_GET['nomQcm']); $query->bindParam(3, $_GET['type']); + $query->bindParam(4, $_GET['intro']); + $result = $query->execute(); + +} + +if($_GET['intro'] !== 'nomodif' && $countRow['count(*)'] !== 0){ + $query = $db->prepare('UPDATE Qcm SET introduction=? WHERE numQcm= ?'); + $query->bindParam(1, $_GET['intro']); + $query->bindParam(2, $_GET['numQcm']); $result = $query->execute(); } @@ -26,10 +42,12 @@ $reponseQuery = $db->prepare('SELECT count(*) FROM QcmQuestion WHERE numQcm= ?') $reponseQuery->bindParam(1, $_GET['numQcm']); $reponseResult = $reponseQuery->execute(); $reponseRow = $reponseResult->fetchArray(); + $numQuestion = $reponseRow['count(*)'] + 1; $reponses = array(); if(isset($_GET['modif'])){ + $numQuestion -=1; $db->supprimerQCM ($numQuestion,$_GET['type']); } @@ -42,7 +60,7 @@ if($_GET['type']=='test'){ else echo 'AJOUT QCM avec succès'; } else{ - $isAdd = $db->ajouterQCM($_GET['numQcm'],$numQuestion,$_GET['consigne'],$_GET['choix'],$_GET['reponse']); + $isAdd = $db->ajouterQCM($_GET['numQcm'],$numQuestion,$_GET['consigne'],$_GET['choix'],$_GET['reponse'],$_GET['baremequestion']); if(!$isAdd){ echo 'ERREUR : le numéro de question existe déjà dans la bdd'; } diff --git a/BddCorrect/Traitement/AjoutQuestion.php b/BddCorrect/Traitement/AjoutQuestion.php index ce76b16..822bbd7 100644 --- a/BddCorrect/Traitement/AjoutQuestion.php +++ b/BddCorrect/Traitement/AjoutQuestion.php @@ -22,6 +22,7 @@ else { $numQuestion = $reponseRow['count(*)'] + 1; if(isset($_GET['modif'])){ + $numQuestion = $_GET['num']; if ($_GET["type"] == 'fonction') $db->supprimerFonction ($numQuestion, $_GET['tp']); else if ($_GET["type"] == 'requete') diff --git a/BddCorrect/Traitement/Export.php b/BddCorrect/Traitement/Export.php index 3fec55f..3a0265d 100644 --- a/BddCorrect/Traitement/Export.php +++ b/BddCorrect/Traitement/Export.php @@ -31,7 +31,7 @@ if ($_GET['type']=='demo'){ } else if ($_GET['type']=='tp'){ - $file = fopen('..\imports\tp\tpexportes.txt', "a"); + $file = fopen('..\imports\tp\tp_exportes.txt', "a"); $matches = array(); $trouve = 0; $reponseQuery = $db->prepare('SELECT bddConcernee,numTp,numquestion,question,reponse,points FROM Correct UNION SELECT bddConcernee,numTp,numquestion,question,reponse,points FROM FunctionCorrect'); diff --git a/BddCorrect/Traitement/Modification.php b/BddCorrect/Traitement/Modification.php index 47815c3..7b552c6 100644 --- a/BddCorrect/Traitement/Modification.php +++ b/BddCorrect/Traitement/Modification.php @@ -80,7 +80,9 @@ $questionRow = $resultQuestion->fetchArray(); - +