Диссертация (1167217), страница 68
Текст из файла (страница 68)
$_SESSION['login_user_firstname'] . " " .$_SESSION['login_user_famname'] . "| <a href='logout.php'>Выйти</a>";// Продолжение работы зарегистрированного пользователяecho "<div class='cmain'>";echo "<a class='custombutton' href='mysets.php'>НАЗАД</a>";$conn = new mysqli($hn, $un, $pw, $db);if ($conn->connect_error) die($conn->connect_error);// Вывод формы редактированияif (isset($_POST['editrow']) && isset($_POST['setid'])) {$setid = $_POST['setid'];$query = "SELECT * FROM lexsets WHERE setid=$setid";$result = $conn->query($query);if (!$result) die($conn->error);else {$row = $result->fetch_array(MYSQLI_ASSOC);$setname = $row['setname'];$setdescr = $row['setdescr'];$conn->close();echo "<form action='saveeditedset.php' method='post'onsubmit='return validate(this)'>";echo "<input type='hidden' name='setid' value='" .
$setid . "'>";424echo "<table><tr><td><label>id: </label></td><td>". $setid ."</td></tr><tr><td><label>Название: </label></td><td><input size='35'maxlength='32' type='text' name='setname' value='" . $setname ."'></td></tr><tr><td><label>Описание: </label></td><td><textarea maxlength='96'rows='5' cols='30' name='setdescr'>" . $setdescr ."</textarea></td></tr></table><br>";echo "<div style='color:red;' id='fail'></div><br>";echo "<input class='custombutton' type='submit' value='Сохранитьизменения'></form>";}} // if POST} // if ($_SESSION['login_user'])else {echo <<<_END<script>window.location.href = "http://agoroz.bget.ru/login.php";</script>_END;}?></div><a href="#0" class="cd-top">Top</a><a id="markB"></a> <!-- site footer --></body></html>ФАЙЛ EDITWORD.PHP<?phprequire_once 'config.php';session_start();?><!DOCTYPE html><html><head><meta charset="UTF-8"><title>Edit Word</title><link rel="stylesheet" type="text/css" href="css/main2.css"><link rel="stylesheet" type="text/css" href="css/jquery.dataTables.min.css"><script type="text/javascript" src='http://code.jquery.com/jquerylatest.min.js'></script><script type="text/javascript" src="js/jquery.dataTables.min.js"></script><script type="text/javascript" src="js/nav.js"></script><script src="js/main.js"></script><script>$(document).ready(function() {$("#markZero").replaceWith(siteHead);$("#markA").replaceWith(navBar);$("#markB").replaceWith(siteFooter);$('#dtab').DataTable( {"searching": false,"paging": false,"info": false});});function clickTheButton(buttonId) {$("#"+buttonId).click();425}function validateMainword(field) {if (field == "") return "Вы не ввели главную единицу.<br>"return ""}function validateTransl(field) {//[а-яА-ЯёЁ] кириллицаreturn (field == "") ? "Вы не ввели перевод.<br>" : ""}function validateGrammar(field) {//[а-яА-ЯёЁ] кириллицаreturn (field == "") ? "Вы не ввели грамматическиехарактеристики.<br>" : ""}function validateForms(field) {//[а-яА-ЯёЁ] кириллицаreturn (field == "") ? "Вы не ввели формы.<br>" : ""}function validateExamples(field) {//[а-яА-ЯёЁ] кириллицаreturn (field == "") ? "Вы не ввели примеры.<br>" : ""}function validate(form) {fail = validateMainword(form.mainword.value);fail += validateTransl(form.transl.value);fail += validateGrammar(form.grammar.value);fail += validateForms(form.forms.value);fail += validateExamples(form.examples.value);if (fail == "") return true//else { alert(fail); return false }else {$("#fail").text("");$("#fail").append(fail);return false}}</script><style></style></head><body><a id="markZero"></a> <!-- site head --><a id="markA"></a> <!-- Nav bar --><?php// Что выводить для зарегистрированного пользователя////////////////////////////////////////////////if ($_SESSION['login_user']) {isexpired();// Проверено, не истекла ли сессияecho "<p class='right'>" .
$_SESSION['login_user_firstname'] . " " .$_SESSION['login_user_famname'] . "| <a href='logout.php'>Выйти</a>";// Продолжение работы зарегистрированного пользователяecho "<div class='cmain'>";426$conn = new mysqli($hn, $un, $pw, $db);if ($conn->connect_error) die($conn->connect_error);// Вывод формы редактированияif (isset($_POST['editword']) && isset($_POST['wordid'])) {$wordid = $_POST['wordid'];$query = "SELECT * FROM words WHERE wordid=$wordid";$result = $conn->query($query);if (!$result) die($conn->error);else {$row = $result->fetch_array(MYSQLI_ASSOC);$refsetid = $row['refsetid'];$query2 = "SELECT * FROM lexsets WHERE setid=$refsetid";$result2 = $conn->query($query2);if (!$result2) die($conn->error);else {$row2 = $result2->fetch_array(MYSQLI_ASSOC);$setname = $row2['setname'];echo "<form method='post' action='showwords.php'><inputtype='hidden' name='setid' value='" . $refsetid .
"'><input type='hidden'name='setname' value='" . $setname . "'>";echo "<input type='submit' class='custombutton'value='НАЗАД'></form>";}$mainword = $row['mainword'];$phonetics = $row['phonetics'];$transl = $row['transl'];$grammar = $row['grammar'];$forms = $row['forms'];$examples = $row['examples'];$extra = $row['extras'];$parts = $row['parts'];// Получить все варианты выбора частей речи$tdparts = "<select name='partsval'>";// $words_parts - Array из config.phpforeach ($words_parts as $item) {if ($item == $parts) { $tdparts .= "<option value='" .
$item ."' selected>" . $item . "</option>"; }else { $tdparts .= "<option value='" . $item . "'>" . $item ."</option>"; }}$tdparts .= "</select>";// Получить все варианты выбора частей речи (сделано)// Получить все варианты выбора наборов$user_email = $_SESSION['login_user'];$query = "SELECT * FROM lexsets WHERE setauthor='$user_email'";$result = $conn->query($query);if (!$result) die($conn->error);else {$tdrefsetid = "<select name='refsetid'>";foreach ($result as $row) {$item = $row['setid'] . "|||" .
$row['setname'];/*echo $refsetid = preg_split('/([|]{3})/', $item)[0];echo "*";echo $setname = preg_split('/[|]{3}/', $item)[1];*/427if ($item == $parts) { $tdrefsetid .= "<option value='" .$item . "' selected>" . $item . "</option>"; }else { $tdrefsetid .= "<option value='" . $item . "'>" .$item . "</option>"; }}$tdrefsetid .= "</select>";}// Получить все варианты выбора наборов (получено)$conn->close();echo "<form action='saveeditedword.php' method='post'onsubmit='return validate(this)'>";echo "<input type='hidden' name='wordid' value='" . $wordid . "'>";echo "<table><tr><td><label>id: </label></td><td>". $wordid ."</td></tr>";echo "<tr><td><label>Набор: </label></td><td>".
$tdrefsetid ."</td></tr>";echo "<tr><td><label>Единица*: </label></td><td><inputmaxlength='128' name='mainword' value='" . $mainword . "'></td></tr>";echo "<tr><td><label>Фонетические характеристики:</label></td><td><input maxlength='128' name='phonetics' value='" . $phonetics ."'></td></tr>";echo "<tr><td><label>Перевод*: </label></td><td><textareamaxlength='1024' rows='5' cols='30' name='transl'>" . $transl ."</textarea></td></tr>";echo "<tr><td><label>Грамматические характеристики*:</label></td><td><textarea maxlength='1024' rows='5' cols='30' name='grammar'>" .$grammar . "</textarea></td></tr>";echo "<tr><td><label>Формы*: </label></td><td><textareamaxlength='2048' rows='10' cols='30' name='forms'>" .
$forms ."</textarea></td></tr>";echo "<tr><td><label>Примеры*: </label></td><td><textareamaxlength='2048' rows='10' cols='30' name='examples'>" . $examples ."</textarea></td></tr>";echo "<tr><td><label>Дополнительно: </label></td><td><textareamaxlength='1024' rows='5' cols='30' name='extra'>" . $extra ."</textarea></td></tr>";echo "<tr><td><label>Часть речи: </label></td><td>" . $tdparts ."</td></tr>";echo "</table><br>";echo "<div style='color:red;' id='fail'></div><br>";echo "<input class='custombutton' type='submit' value='Сохранитьизменения'></form>";}} // if POST} // if ($_SESSION['login_user'])else {echo <<<_END<script>window.location.href = "http://agoroz.bget.ru/login.php";</script>_END;}?></div><a href="#0" class="cd-top">Top</a>428<a id="markB"></a> <!-- site footer --></body></html>ФАЙЛ FORGOTTEN.PHP<?phprequire_once 'config.php';$conn = new mysqli($hn, $un, $pw, $db);session_start();if ($conn->connect_error) die($conn->connect_error);if(isset($_POST['mail'])) {$email_temp = sanitizeMySQL($conn, $_POST['mail']);// Проверка наличия пользователя$query = "SELECT * FROM users WHERE uemail='$email_temp'";$result = $conn->query($query);if (!$result->num_rows) {$dupl_email = true;}else {$pw_temp = createRandomPassword();$salt1 = "qm&h*";$salt2 = "pg!@";$token = hash('ripemd128', "$salt1$pw_temp$salt2");$msg = "Ваш новый пароль: " .
$pw_temp;// send emailmail($email_temp, "Изменение пароля", $msg);$query = "UPDATE users SET password='$token' WHEREuemail='$email_temp'";$result = $conn->query($query);if (!$result) die($conn->error);echo <<<_END<script>alert('Новый пароль был выслан Вам на указанный адрес эл почты.ВНИМАНИЕ! Письмо может оказаться в папке спама.'); window.location.href ="http://agoroz.bget.ru/login.php";</script>_END;$conn->close();}}?><!DOCTYPE html><html><head><meta charset="UTF-8"><title>Index</title><link rel="stylesheet" type="text/css" href="css/main2.css"><script src='http://code.jquery.com/jquery-latest.min.js'></script><script type="text/javascript" src="js/nav.js"></script><script src="js/main.js"></script><script>$(document).ready(function() {$("#markZero").replaceWith(siteHead);$("#markA").replaceWith(navBar);$("#markB").replaceWith(siteFooter);});429function validateEmail(field){if (field == "") return "Вы не ввели адрес эл.