Подскажите пожалуйста, уважаемые мастера, правильно ли я отфильтровал данные? Новичек, и вот разбираюсь, как фильтровать данные перед добавление их в БД и выводом пользователям.
Вот собственно мой код:
<meta charset="UTF-8">
<?php
$login = 'root';
$pass = '111111';
$dbname = 'new';
$hostname = 'localhost';
$db = new mysqli($hostname, $login, $pass, $dbname);
if ($db -> connect_error) die ($db -> connect_error);
echo '
<table><tr><th>Your Name:</th><th>Your text:</th></tr>
<form method="POST" action="strip_tags.php">
<tr><th><input type="text" name="name"></th>
<th><textarea cols=30 rows=5 name="text"></textarea></th></tr>
<th><input type="submit" name="submit" value="SEND"></th></table>
</form>
';
if (isset($_POST['submit'])) {
$name = filter($_POST['name']);
$text = filter($_POST['text']);
if ($name == '') echo 'Вы оставили пустое полу name<br>';
if ($text == '') echo 'Вы оставили пустое поле text<br>';
if (($name != '') AND ($text != '')) {
$name = $db -> real_escape_string($name);
$text = $db -> real_escape_string($text);
$query = "INSERT INTO `users` VALUES('-', '".$name."', '".$text."')";
$result = $db -> query($query);
echo $name.'<br>'. $text . '<br>';
if (!$result) echo $db -> error;
if ($result) echo 'Успешное добавление новых данных';
}
}
echo '<br><br>';
$result = $db -> query("SELECT * FROM `users`"
$row = $result -> num_rows;
for ($i = 0; $i < $row; $i++) {
$result -> data_seek($i);
$rows = $result -> fetch_array(MYSQLI_ASSOC);
echo 'User id - ' . $rows['id'] . '<br>';
echo 'User name - ' . $rows['name'] . '<br>';
echo 'User text - ' . $rows['text'] . '<br><hr>';
}
$result -> close();
$db -> close();
function filter($var) {
if (get_magic_quotes_gpc()) $var = stripslashes($var);
$var = htmlspecialchars($var);
return $var;
}
?>
Заранее благодарю за помощь
htmlspecialchars лучше на выводе из базы данных использовать. Там где необходимо. Как по мне
Миледи, посмотри на нестандартный подход к итерации данных
bienten, ты уже выразил свое мнение, иди дальше пасись, олень.
Или пишешь второй раз, так как на тебя никто не обратил внимания? Клоун
Assassun, учись писать нормальные посты.
Он ещё учится.
Автор спросил о фильтрации, на что и получил ответ.
Не вижу смысла смотреть на правильность фильтрации, когда весь код верх дном
Учусь, баранина отвечать по существу. Не знаешь - не трись тут. И не мешай отвечать грамотным людям.
Конструктивного ответа от тебя не последовало, а мнишь о себе, как будто заслуженный кодер страны