Как вы можете ограничить то, что вы отображаете MYSQL
Привет,
Поэтому я пытаюсь отобразить некоторые элементы из базы данных, основываясь на предпочтениях пользователя (он же ключевые слова)
То, что я пытаюсь сделать, - это отображать только 3 рецепта за один раз. Я попытался сделать SQL-подсчет для подсчета строк, но, похоже, это не работает, только количество строк, которое я могу получить, относится к одному элементу, например, один элемент имеет количество строк 3. Но они мне нужны для всех вещей.
Я тоже попробовал ограничить sql и ничего не вышло
Есть ли более простой способ сделать это, чем приведенный ниже? используя цикл while, который проходит через все ключевые слова и дисплеи, однако мне нужно что - то еще-мне нужно отобразить 3 элемента, а затем позже....если что-то произойдет, отобразите еще 1??
Что я уже пробовал:
if ($$meal == '1') //whether the user selected the keyword. (1=True) { $dbQuery = $conn->prepare("select * from Meal where Category='meal' AND Keyword = '" . ($$Keyword) . "'"); //get all recipes where keyword = word user selected $dbQuery->execute(); while ($dbRow=$dbQuery->fetch(PDO::FETCH_ASSOC)) { echo "//all infromation on this"; } echo $dbQuery->rowCount()."\n"; } }
Richard Deeming
Ваш код уязвим для SQL-инъекция[^]. НИКОГДА используйте конкатенацию строк для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.
Все, что вы хотели знать о SQL-инъекции (но боялись спросить) | Трой Хант[^]
Как я могу объяснить SQL-инъекцию без технического жаргона? | Обмен Стеками Информационной Безопасности[^]
Шпаргалка по параметризации запросов | OWASP[^]
Member 13637584
Спасибо за эти ссылки.