Advertisement
Guest User

Untitled

a guest
Apr 29th, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.48 KB | None | 0 0
  1. <?php
  2. require_once "login.php";
  3. $connection = new mysqli($db_hostname, $db_username, $db_password, $db_database); //From login.php, add connection info to there.
  4.  
  5. if ($connection->connect_error) {
  6. die($connection->connect_error);
  7. }
  8.  
  9. $query = [];
  10. //survey_id becomes foreign key later
  11. $query[] = "CREATE TABLE question(id INT(6) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, question_text VARCHAR(30) NOT NULL) ENGINE=InnoDB";
  12. $query[] = "CREATE TABLE survey(id INT(6) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, survey_name VARCHAR(30) NOT NULL,
  13. description VARCHAR(200), creation_date VARCHAR(30))ENGINE=InnoDB";
  14. $query[] = "CREATE TABLE survey_question(id INT(6) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
  15. survey_id INT(6) UNSIGNED NOT NULL, question_id INT(6) UNSIGNED NOT NULL,
  16. FOREIGN KEY(survey_id) REFERENCES survey(id), FOREIGN KEY(question_id) REFERENCES question(id)) ENGINE=InnoDB";
  17. $query[] = "CREATE TABLE answer(id INT(7) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, text VARCHAR(80) NOT NULL) ENGINE=InnoDB";
  18. $query[] = "CREATE TABLE survey_question_answer(id INT(7) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
  19. survey_id INT(6) UNSIGNED NOT NULL, question_id INT(6) UNSIGNED NOT NULL,
  20. answer_id INT(7) UNSIGNED NOT NULL, FOREIGN KEY(survey_id) REFERENCES survey(id), FOREIGN KEY(question_id) REFERENCES question(id),
  21. FOREIGN KEY(answer_id) REFERENCES answer(id)) ENGINE=InnoDB";
  22. $query[] = "CREATE TABLE result(id INT(7) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
  23. survey_id INT(6) UNSIGNED NOT NULL, question_id INT(6) UNSIGNED NOT NULL, answer_id INT(7) UNSIGNED,
  24. FOREIGN KEY(survey_id) REFERENCES survey(id), FOREIGN KEY(question_id) REFERENCES question(id),
  25. FOREIGN KEY(answer_id) REFERENCES answer(id)) ENGINE=InnoDB";
  26. //User table might be added later.
  27.  
  28.  
  29. foreach ($query as $qr) {
  30. $connection->query($qr);
  31. }
  32.  
  33. $check_query = [];
  34. $check_query[] = "SELECT 1 FROM question LIMIT 1";
  35. $check_query[] = "SELECT 1 FROM answer LIMIT 1";
  36. $check_query[] = "SELECT 1 FROM survey LIMIT 1";
  37. $check_query[] = "SELECT 1 FROM survey_question LIMIT 1";
  38. $check_query[] = "SELECT 1 FROM survey_question_answer LIMIT 1";
  39. $check_query[] = "SELECT 1 FROM result LIMIT 1";
  40. $check_query[] = "SELECT 1 FROM survey LIMIT 1";
  41.  
  42. $ans = true;
  43.  
  44. foreach($check_query as $cheq) {
  45. $ans = $connection->query($cheq);
  46. if ($ans === false) {
  47. break;
  48. }
  49. }
  50.  
  51. if ($ans) {
  52. echo "Tables were created";
  53. }
  54. else {
  55. echo "Error.";
  56. }
  57. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement