Как выводить данные из бд с условие в php? [закрыт]

119
15 октября 2019, 17:50

Как делать с условием я знаю, НО, как сделать чтоб с условием, ну как объяснить Короче вот пример того что мне нужно

$query = "SELECT * FROM messages WHERE id_user2 = '".$user_id2."' (как тут сделать или?) id_user1 = '".$user_id."' ";
$message = mysqli_query($mysqli, $query );
Answer 1
$query = "SELECT * FROM messages WHERE id_user2 = '" . $user_id2 . "' OR id_user1 = '".$user_id . "' ";
$message = mysqli_query($mysqli, $query);

Но обратите внимание на то, что сформированный таким способом sql-запрос подвержен уязвимости, известной как sql-инъекция (sql-injection). Значения переменных могут содержать такие данные, что после контактации c ними, результирующая строка в переменной $query будет содержать нежелательную sql-команду.

Одним из способов борьбы с sql-инъекциями, является использование подготовленных запросов (описание).

Вот переписанный пример запроса, с использованием подготовленного запроса (обработка ошибок опущена для краткости, только суть):

$query = "SELECT * FROM messages WHERE id_user2 = ? OR id_user1 = ?";
$stmt = mysqli_prepare($mysqli, $query);
mysqli_stmt_bind_param($stmt, "ii", $user_id2, $user_id);
mysql_stmt_execute($stmt);
$message = mysqli_stmt_get_result($stmt);

UPD: дополнен / изменен в ответ на комментарий @Ипатьев

READ ALSO
Не получается работать с json строкой как с массивом [дубликат]

Не получается работать с json строкой как с массивом [дубликат]

Данный вопрос является точным дубликатом:

115
Апач отображает пхп код вместо того чтобы его исполнять

Апач отображает пхп код вместо того чтобы его исполнять

Поставил в виртуалке CentOS 7, в него lamp (httpd и mariadb как обычно, а php 72 из remirepo)

85
Как добавить товары из корзины Woocommerce в форму?

Как добавить товары из корзины Woocommerce в форму?

На сайте есть форма, которая находится в корзине - ссылка на сайтКак сделать так, чтобы данные из формы захватывали каталог товаров из корзины...

110
Как отфильтровать массив через array walk и preg_match

Как отфильтровать массив через array walk и preg_match

Есть массив $bad, в нем содержатся запрещенные слова, есть массив $divs который не должен содержать элементы массива $bad, я пробую фильровать при...

129