25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

206 lines
8.8KB

  1. <!DOCTYPE html>
  2. <html>
  3. <title>CV dbase</title>
  4. <meta charset="UTF-8" name="viewport" content="width=device-width, initial-scale=1">
  5. <!--Šeit norādīts ceļš uz w3 school CSS var dzēst vai labot pēc savas vajadzības-->
  6. <link rel="stylesheet" href="css/w3.css">
  7. <?php
  8. //Šeit jānorāda ceļš uz db.php failu. Tiks veikta pārbaude, vai šāds fails eksistē.
  9. //Ja eksistē, tad skripts rakstīts, ka instalācija veiksmīga! Trūkums tāds, ka db.php var būt nekorekti izveidots.
  10. if(include('include/db.php'))
  11. {
  12. echo '<h2>Instalācija ir veikta veiksmīgi! Ja nepieciešams pārinstalēt, dzēsiet datubāzi!</h2>';
  13. }
  14. else
  15. {
  16. //Ja fails netika atrasts, tad paziņos, ka jāveic instalācija.
  17. echo '<h2>Nav izveidots savienojums ar DB. Lūgums to konfigurēt zemāk</h2>';
  18. };
  19. //Sāksim ar Datubāzes savienojuma konfigurēšanu. ar echo komandu izvada HTML kodu formas izveidošanai.
  20. echo '<div class="w3-container w3-padding-16">';
  21. echo '<div class="w3-third w3-container w3-padding-16">';
  22. echo '<h3>1. solis:Konfigurējiet datubāzes parametrus</h3>';
  23. echo '<form action="" method="POST">';
  24. echo '<label>Datubāzes serveris</label>';
  25. echo '<input class="w3-input" type="text" required name="server">';
  26. echo '<label>Datubāzes lietotājvārds</label>';
  27. echo '<input class="w3-input" type="text" required name="user">';
  28. echo '<label>Datubāzes parole</label>';
  29. echo '<input class="w3-input" type="text" required name="password">';
  30. echo '<label>Datubāzes nosaukums</label>';
  31. echo '<input class="w3-input" type="text" required name="dbname"><br>';
  32. echo '</div>
  33. <div class="w3-padding-16 w3-container w3-third">
  34. <h3>2.Solis:Pievienot uzņēmuma lietotāju:</h3>
  35. <form action="" method="POST">
  36. <label>Epasts:</label>
  37. <input class="w3-input" type="mail" required name="epasts">
  38. <label>Parole:</label>
  39. <input class="w3-input" type="password" required name="parole">
  40. <br>
  41. <input type="submit" class="w3-button w3-green" name="db_saglabat" value="Saglabāt">
  42. </form>
  43. </div>
  44. </div>';
  45. //Ja formā ir nospiesta poga saglabāt izpildās viss zemāk minētais kods.
  46. //Izveidojam db.php failu
  47. if(isset($_POST['db_saglabat']))
  48. {
  49. //dabūjam DB parametrus
  50. $servername1 = $_POST['server'];
  51. $username1 = $_POST['user'];
  52. $password1 = $_POST['password'];
  53. $dbname1 = $_POST['dbname'];
  54. // Create connection
  55. $conn1 = mysqli_connect($servername1, $username1, $password1, $dbname1);
  56. mysqli_set_charset( $conn, 'utf8');
  57. // Check connection
  58. if (!$conn1) {
  59. die('Connection failed: ' . mysqli_connect_error());
  60. }
  61. //skripts, kurš iveidos tabulas iekš dBase
  62. //saglabājam DB
  63. //Tabula priekš lietotajiem. Nedzēsiet
  64. $tabulausers="CREATE TABLE IF NOT EXISTS tbUsers (
  65. UsrID int(25) NOT NULL AUTO_INCREMENT,
  66. UsrMail text COLLATE utf8_bin NOT NULL,
  67. UsrParole text COLLATE utf8_bin NOT NULL,
  68. UsrAdmin int(2) NOT NULL DEFAULT 0,
  69. UsrDzests int(2) NOT NULL DEFAULT 0,
  70. PRIMARY KEY (UsrID)
  71. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;";
  72. //PIEVIENOJIET KODU SAVU TABULU IZVEIDEI!
  73. $tabulaamats = "CREATE TABLE IF NOT EXISTS tbAmats (
  74. AID int(5) NOT NULL AUTO_INCREMENT,
  75. AmatsNos text COLLATE utf8_bin NOT NULL,
  76. PRIMARY KEY (AID)
  77. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;" ;
  78. $tabulacv = "CREATE TABLE IF NOT EXISTS tbCV (
  79. CID int(5) NOT NULL AUTO_INCREMENT,
  80. PERSID int(5) NOT NULL,
  81. CVFails text COLLATE utf8_bin NOT NULL,
  82. CVDatums timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  83. CVLabs int(11) NOT NULL DEFAULT 1,
  84. CVSlikts int(11) NOT NULL DEFAULT 0,
  85. CVDzests int(11) NOT NULL DEFAULT 0,
  86. PRIMARY KEY (CID)
  87. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;";
  88. $tabulacvtag="CREATE TABLE IF NOT EXISTS tbCVTAG (
  89. CTID int(5) NOT NULL AUTO_INCREMENT,
  90. PersonasID int(5) NOT NULL,
  91. CVID int(5) NOT NULL,
  92. TAGID int(5) NOT NULL,
  93. PRIMARY KEY (CTID)
  94. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;";
  95. $tabulaintervija="CREATE TABLE IF NOT EXISTS tbIntervija (
  96. IntID int(5) NOT NULL AUTO_INCREMENT,
  97. PERSID text COLLATE utf8_bin NOT NULL,
  98. IntDatums text COLLATE utf8_bin NOT NULL,
  99. IntKomentars text COLLATE utf8_bin,
  100. IntRezultats text COLLATE utf8_bin,
  101. AMATSID text COLLATE utf8_bin NOT NULL,
  102. IntAtbildet int(11) NOT NULL DEFAULT 0,
  103. IntIntervetajs text COLLATE utf8_bin NOT NULL,
  104. PRIMARY KEY (IntID)
  105. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;";
  106. $tabulakomentars="CREATE TABLE IF NOT EXISTS tbKomentars (
  107. PiezID int(5) NOT NULL AUTO_INCREMENT,
  108. PersonasID int(5) NOT NULL,
  109. Piezime text COLLATE utf8_bin NOT NULL,
  110. PiezDatums timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  111. PiezDzesta int(2) NOT NULL DEFAULT 0,
  112. PRIMARY KEY (PiezID)
  113. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;";
  114. $tabulapersamats="CREATE TABLE IF NOT EXISTS tbPersAmats (
  115. PAID int(5) NOT NULL AUTO_INCREMENT,
  116. PersID int(5) NOT NULL,
  117. AmatID int(5) NOT NULL,
  118. PRIMARY KEY (PAID)
  119. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;";
  120. $tabulapersonas="CREATE TABLE IF NOT EXISTS tbPersonas (
  121. PID int(5) NOT NULL AUTO_INCREMENT,
  122. PersVards text COLLATE utf8_bin NOT NULL,
  123. PersUzvards text COLLATE utf8_bin NOT NULL,
  124. PersGads text COLLATE utf8_bin NOT NULL,
  125. PersEpasts text COLLATE utf8_bin NOT NULL,
  126. PersTel text COLLATE utf8_bin NOT NULL,
  127. PersPilseta text COLLATE utf8_bin NOT NULL,
  128. PersIela text COLLATE utf8_bin NOT NULL,
  129. PersPienemts int(11) NOT NULL DEFAULT 0,
  130. PersNoraidits int(11) NOT NULL DEFAULT 0,
  131. PersPievienots int(11) NOT NULL DEFAULT 0,
  132. PersBlacklist int(11) NOT NULL DEFAULT 0,
  133. PRIMARY KEY (PID)
  134. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;";
  135. $tabulatag="CREATE TABLE IF NOT EXISTS tbTag (
  136. TID int(5) NOT NULL AUTO_INCREMENT,
  137. TagName text COLLATE utf8_bin NOT NULL,
  138. PRIMARY KEY (TID)
  139. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;";
  140. //MySQL VAICĀJUMU IZPILDEI! Skatīt video. Ierakstiet savu vaicājumu izpildi. Improvise Adapt Overcome!!!
  141. $parole= mysqli_real_escape_string($conn1, $_POST['parole']);
  142. $parolehash=password_hash($parole, PASSWORD_DEFAULT);
  143. $epasts=mysqli_real_escape_string($conn1, $_POST['epasts']);
  144. //Sagatavojam vaicājumu 1. lietotāja izveidei (aizpidlīts formā)
  145. $insusr="INSERT INTO tbUsers (UsrMail,UsrParole,UsrAdmin) VALUES ('$epasts','$parolehash',1)";
  146. /*Pārbaudam, vai varam izveidot savienojumu ar SQL serveri un vai varam izveidot 1. tabulu.
  147. Ja varam, tad turpinam instalācijas gaitu, ja nē, izvadam kļūdu!
  148. */
  149. if(mysqli_query($conn1,$tabulausers))
  150. {
  151. //Izveidojam db.php failu
  152. //Norādam faila atrašanās vietu! Mapei ir jāeksistē uz servera!
  153. $jaunsFails = 'include/db.php';
  154. //Pārbaudam, vai norādītā mapē var izveidot failu!
  155. if ( ! is_writable(dirname($jaunsFails))) {
  156. /*Ja nav iespējams izveidot failu, kļūdas paziņojums! Mapei jābūt rakstāmai www-data lietotājam!
  157. To arī norādam kļūdas paziņojumā. Komanda serverī, lai veiktu izmaīnas chown -R www-data:www-data /cels/uz/mapi
  158. */
  159. echo dirname($$jaunsFails) . ' jābūt rakstāmam <b>www-data!!!</b>';
  160. } else {
  161. //Sagatavojam db.php faila saturu
  162. $failaSaturs= '<?php
  163. $servername='.$_POST['server'].';
  164. $username='.$_POST['user'].';
  165. $password='.$_POST['password'].';
  166. $dbname='.$_POST['dbname'].';
  167. $conn = mysqli_connect($servername, $username, $password, $dbname);
  168. mysqli_set_charset( $conn, "utf8");
  169. if (!$conn) {
  170. die("Connection failed: " . mysqli_connect_error());
  171. }
  172. ?>';
  173. //Saglabājam failu
  174. file_put_contents($jaunsFails, $failaSaturs);
  175. //Izpildām visus SQL vaicājumus, lai izveidotu un saglabātu datus datubāzē
  176. mysqli_query($conn1,$insusr);
  177. mysqli_query($conn1,$tabulacv);
  178. mysqli_query($conn1,$tabulacvtag);
  179. mysqli_query($conn1,$tabulaintervija);
  180. mysqli_query($conn1,$tabulakomentars);
  181. mysqli_query($conn1,$tabulapersamats);
  182. mysqli_query($conn1,$tabulapersonas);
  183. mysqli_query($conn1,$tabulatag);
  184. //Paziņojam, ka instalācija veiksmīga
  185. echo '<h2>Instalācija ir veiksmīga! <a href=index.php>Sākums</a></h2>';
  186. }
  187. }
  188. else
  189. {
  190. /*Ja nu tomēr kaut kas noiet greizi. Kļūdas paziņojums.
  191. Problēmu meklēt LOG failos, vai pamainam kodu, lai tiktu attēlotas kļūdas.*/
  192. echo '<h2>Kaut kas nogāja greizi. Sazinieties ar izstrādātāju!</h2>';
  193. }
  194. }

Powered by TurnKey Linux.