Тема: Як зберегти текст SQL запиту в таблицю БД
Всім доброго вечора) Я почав вивчати PHP. Виникла ідея створити щось типу цього. https://www.w3schools.com/sql/trysql.as … select_all Але локальну версію. В мене є БД, з якої буде проводитись вибірка. Є форма, в якій користувач вводить запит на вибірку даних з таблиці. Користувач клікає на кнопку надіслати, тоді його відповідь( запит типу SELECT id_seller, name_seller, percent_of_sales FROM test_sellers WHERE city = 'Київ') повинна записуватись в таблицю БД(таблиця queries, поле text_query), а потім вона порівнюється із правильним значенням (зараз правильне значення записане в змінну $right_query) і у випадку збігу- користувачеві нараховуються бали. Додаю скрін бази.
Форма:
[code=HTML]
<div id="content">
<h3>Завдання 1</h3>
<p id="description">Вибрати всіх продавців(прізвище, ім'я, комісійні), які проживають в м.Київ</p>
<div id="query" class="textbox">
<form class="query_form" method="post" action="admin/controllers/queryController.php" name="queryform">
<ul>
<li>
<textarea name="querytext" rows="10px" cols="100px" required></textarea>
</li>
<li>
<input class="submit" type="submit">
</li>
</ul>
</form>
</div>
<h3>Результат вибірки</h3>
</div>
[/code]
Обробник форми:
[code=PHP]
<div id="content">
<?php
if (isset($_POST['querytext'])) {
$textquery = $_POST['textquery'];
var_dump($textquery);
}
$insert_query = mysqli_query ($link,"INSERT INTO queries (text_query) VALUES ('$textquery')");
if($insert_query == true){
echo 'Запит успішно доданий в базу.';
}
else{
echo 'Запит в базу не доданий';
}
$right_query = "SELECT id_seller, name_seller, percent_of_sales FROM _test_sellers WHERE city = 'Київ'"; //правильна відповідь
if($textquery == $right_query){
$query = mysqli_query($link,"SELECT id_seller, name_seller, percent_of_sales FROM _test_sellers WHERE city = 'Київ'");
$myrow = mysqli_fetch_array($query, MYSQLI_ASSOC);
}
else
{
echo "<p>Ви ввели неправильний запит.</p>";
}
?>
</div>
[/code]
Таблиця queries(запити користувачів) і _test_sellers(звідси здійснюється вибірка)