diff --git a/includes/createDb.sql b/includes/createDb.sql
index a66f36b..7c16e3f 100755
--- a/includes/createDb.sql
+++ b/includes/createDb.sql
@@ -1,4 +1,4 @@
--- base sql
+-- Creates an empty DB for your own questions/etc.
CREATE TABLE IF NOT EXISTS `user` (
`user_id` INT(11) NOT NULL AUTO_INCREMENT,
`user_time` INT(11) NOT NULL,
diff --git a/insert.php b/insert.php
index 006c37c..b163cae 100644
--- a/insert.php
+++ b/insert.php
@@ -1,11 +1,12 @@
$d) {
@@ -21,7 +22,7 @@ foreach($files as $file) {
preg_match('/".*?"/', $splitNewLine[0], $matches);
$questions[$i]['image'] = strtoupper($matches[0]);
- if (strpos($splitNewLine[1], ':') !== false || !empty(trim($splitNewLine[2]))) {
+ if (strpos($splitNewLine[1], ':') !== false && !empty(trim($splitNewLine[2]))) {
$twoLineQuestion = true;
}
$cutOutImageShit = explode(">", $splitNewLine[1]);
@@ -47,7 +48,7 @@ foreach($files as $file) {
}
$x = $b = 1;
foreach ($splitNewLine as $a => $line) {
- //Don't ask what this witchcraft is.
+ //Don't ask what this witchcraft is. I don't know either.
if ($a == 0) continue;
if (($twoLineQuestion || $imageFirstLine) && $a == 1) continue;
if ($threeLineQuestion || ($twoLineQuestion && $imageFirstLine) && $a == 2) continue;
@@ -67,39 +68,51 @@ foreach($files as $file) {
$questions[$i - 1]['correctAnswer'] = substr($d, 3);
}
}
- $i = $b = $d = $a = 0; //Clear the useless stuff from above.
- if (isset($_REQUEST['insert']) && $_REQUEST['insert'] == 1 && count($questions)) {
- $count = 0;
- foreach ($questions as $q) {
- $db = new db();
- $db->query("INSERT INTO question(question_time, questiondata_number, questiondata_content, questiondata_image)
- VALUES(:qTime, :qNumber, :qContent, :qImage)");
- $db->bind("qTime", time());
- $db->bind("qNumber", $q['questionNumber'] ?: 0);
- $db->bind("qContent", $q['question']);
- $db->bind("qImage", $q['image'] ?: "");
- $db->execute();
- $lastRow = $db->lastInsertId();
- $db->kill(); //IS THIS EVEN NEEDED?
- $row = 1;
- foreach ($q['answers'] as $a) {
- $db = new db();
- $db->query("INSERT INTO answer(answer_time, answerdata_content, answerdata_question, answerdata_correct)
- VALUES(:aTime, :aContent, :aQuestion, :aCorrect)");
- $db->bind("aTime", time());
- $db->bind("aContent", $a);
- $db->bind("aQuestion", $lastRow);
- $db->bind("aCorrect", ($q['correctAnswer'] == $row ? "1" : "0"));
- $db->execute();
- $db->kill();
- $row++;
- }
- $db = null;
- $count++;
- }
- echo "Inserted " . $count . " questions.";
- } else {
- var_dump($questions);
+
+ //CHECK ALL THE STUFF IS CORRECT.
+ foreach($questions as $q) {
+ $bad = false;
+ if(count($q['answers']) != 4) $bad = true;
+ if(!$q['correctAnswer']) $bad = true;
+ if(!$q['questionNumber']) $bad = true;
+ if(empty(trim($q['question']))) $bad = true;
+ foreach($q['answers'] as $a) {
+ if(empty(trim($a))) $bad = true;
+ }
+ if($bad) var_dump($q);
}
-}
\ No newline at end of file
+
+ $questionArray = array_merge($questionArray, $questions);
+
+}
+exit();
+$i = $b = $d = $a = $count = 0; //Clear the useless stuff from above.
+foreach ($questionArray as $q) {
+ $db = new db();
+ $db->query("INSERT INTO question(question_time, questiondata_number, questiondata_content, questiondata_image)
+ VALUES(:qTime, :qNumber, :qContent, :qImage)");
+ $db->bind("qTime", time());
+ $db->bind("qNumber", $q['questionNumber'] ?: 0);
+ $db->bind("qContent", $q['question']);
+ $db->bind("qImage", $q['image'] ?: "");
+ $db->execute();
+ $lastRow = $db->lastInsertId();
+ $db->kill(); //IS THIS EVEN NEEDED?
+ $row = 1;
+ foreach ($q['answers'] as $a) {
+ $db = new db();
+ $db->query("INSERT INTO answer(answer_time, answerdata_content, answerdata_question, answerdata_correct)
+ VALUES(:aTime, :aContent, :aQuestion, :aCorrect)");
+ $db->bind("aTime", time());
+ $db->bind("aContent", $a);
+ $db->bind("aQuestion", $lastRow);
+ $db->bind("aCorrect", ($q['correctAnswer'] == $row ? "1" : "0"));
+ $db->execute();
+ $db->kill();
+ $row++;
+ }
+ $db = null;
+ $count++;
+}
+echo "Inserted " . $count . " questions.";
\ No newline at end of file
diff --git a/newinsert.php b/newinsert.php
new file mode 100644
index 0000000..b003a7e
--- /dev/null
+++ b/newinsert.php
@@ -0,0 +1,151 @@
+ $d) {
+ if (empty($d)) continue;
+ if (strpos(strtolower($d), 'question') !== false) {
+ //PARSE THE QUESTION
+ $fullQuestion = substr(preg_replace('/^.+\n/', '', $d), 1); //Strip useless firstline.
+ $numbers = explode(" ", $fullQuestion);
+ $questions[$i]['questionNumber'] = $numbers[0]; // Get # of question
+ $lengthOfNumber = strlen($questions[$i]['questionNumber']); //Get length of #
+ $splitNewLine = explode("\n", trim($fullQuestion)); //Split rest into lines.
+ $twoLineQuestion = $imageFirstLine = $threeLineQuestion = false;
+ if (strpos(strtolower($splitNewLine[0]), '", $splitNewLine[1]);
+ $trashBin = array_shift($cutOutImageShit);
+ $firstLine = implode(" ", $cutOutImageShit);
+ $questions[$i]['question'] = trim(substr(($twoLineQuestion ? $firstLine . " "
+ . $splitNewLine[2] : $firstLine), $lengthOfNumber));
+ } else {
+ if (strpos($splitNewLine[0], ':') !== false || !empty(trim($splitNewLine[1]))) {
+ if (strpos($splitNewLine[0], ':') !== false) {
+ if($questions[$i]['questionNumber'] == "10.2") error_log('here');
+
+ $twoLineQuestion = true;
+ if (strpos(strtolower($splitNewLine[1]), ' $line) {
+ //Don't ask what this witchcraft is. I don't know either.
+ if ($a == 0 || $skip) {
+ $skip = false;
+ continue;
+ }
+ if (($twoLineQuestion || $imageFirstLine) && $a == 1) continue;
+ if ($threeLineQuestion || ($twoLineQuestion && $imageFirstLine) && $a == 2) continue;
+ if ($imageFirstLine && $threeLineQuestion && $a == 3) continue;
+ if (empty(trim($line))) continue;
+ if (strpos(strtolower($line), 'totallines') !== false) continue;
+
+ if (strpos(strtolower($line), 'Total questions:".$totalCount."
Good questions:".$goodCount."
Bad questions:".$badCount;
+exit();
+$i = $b = $d = $a = $count = 0; //Clear the useless stuff from above.
+foreach ($questionArray as $q) {
+ $db = new db();
+ $db->query("INSERT INTO question(question_time, questiondata_number, questiondata_content, questiondata_image)
+ VALUES(:qTime, :qNumber, :qContent, :qImage)");
+ $db->bind("qTime", time());
+ $db->bind("qNumber", $q['questionNumber'] ?: 0);
+ $db->bind("qContent", $q['question']);
+ $db->bind("qImage", $q['image'] ?: "");
+ $db->execute();
+ $lastRow = $db->lastInsertId();
+ $db->kill(); //IS THIS EVEN NEEDED?
+ $row = 1;
+ foreach ($q['answers'] as $a) {
+ $db = new db();
+ $db->query("INSERT INTO answer(answer_time, answerdata_content, answerdata_question, answerdata_correct)
+ VALUES(:aTime, :aContent, :aQuestion, :aCorrect)");
+ $db->bind("aTime", time());
+ $db->bind("aContent", $a);
+ $db->bind("aQuestion", $lastRow);
+ $db->bind("aCorrect", ($q['correctAnswer'] == $row ? "1" : "0"));
+ $db->execute();
+ $db->kill();
+ $row++;
+ }
+ $db = null;
+ $count++;
+}
+echo "Inserted " . $count . " questions.";
\ No newline at end of file