Я довольно новичок в PHP. Я создал раскрывающийся список, который показывает список ингредиентов, которые являются (мясо, вегетарианское или вегетарианское). Когда пользователь регистрируется на моем веб-сайте, они выбирают, какую диету они следуют, и это вставляется в базу данных в колонку «dietID
».неожиданный T_VARIABLE, почему мой раскрывающийся список не находит переменную, которую я создал?
Я хочу, чтобы раскрывающийся список автоматически показывал только мясо или вегетарианское ИЛИ вегетарианское перечни ингредиентов, ЗАВИСИМО ОТ dietID
пользователей «они зарегистрированы как.
Ошибка я получаю
неожиданный '$ _SESSION' (T_VARIABLE) ..... по линии 42.
(линия 42 является ЗЕЬЕСТ)
require_once("connect.php");
if (!$db_server) {
die("Unable to connect to MySQL: " . mysqli_connect_error());
} else {
mysqli_select_db($db_server, $db_database);
$query = "SELECT * FROM ingredients WHERE dietID="$_SESSION['diet']"";
$result = mysqli_query($db_server, $query);
if (!$result)
die("Query failed: " . mysqli_error($db_server));
while ($row = mysqli_fetch_array($result)) {
$str_options .= "<option value='" . $row['ID'] . "'>";
$str_options .= $row['ingredient'];
$str_options .= "</option>";
}
}
и форма:
<form method="post" action="chefsclaw.php">
Which ingredient are you interesting in finding out the healthy alternatives for?
<br>
<br>
<select name="choice">
<?php
echo $str_options;
?>
</select>
<br>
<br>
<input type="submit" name="submit" value="Lookup" />
</form>
N.B Я создал переменные для dietID на странице регистрации. Эти переменные следующие:
$db_diet = $row['dietID'];
$_SESSION['diet'] = $db_diet;
Я был бы признателен за любые указания.
EDIT: остальная часть кода обработки формы:
<?php // connect to database
require_once 'connect.php';
require_once 'checklog.php';
require_once 'functions.php';
mysqli_select_db($db_server, $db_database);
$str_message = $message = $str_comments = $output = "";
if (!$db_server) {
die("Unable to connect to MySQL: " . mysqli_connect_error());
} else {
// this tests if look up form has an input
if(trim($_POST['submit']) == "Lookup") { // set to value of your submit
if (isset($_POST['choice'])) { //Capture form data, if anything was submitted
$choice = clean_string($db_server, $_POST['choice']);
$query = "SELECT ingredient, alternative, dietID FROM ingredients WHERE ID=$choice";
mysqli_select_db($db_server, $db_database); // query the database
$result = mysqli_query($db_server, $query);
if (!$result)
die("Database access failed: " . mysqli_error($db_server) . $query);
if ($row = mysqli_fetch_array($result)) { // if there are any rows, print out the contents
$output = 'The healthy alternatives for ' . $row['ingredient'] . ' could be ' . $row['alternative'] . ' which would suit a ' . $row['dietID'] . ' based diet. ';
} else {
$output = 'The ingredient selected was not found in the database';
}
mysqli_free_result($result);
} else {
$output = 'No ingredient was selected';
}
}
}
'WHERE dietID = '». $ _ SESSION [ 'диета']. "'";. 'Там Теперь я могу съесть –
я вижу котировки с в кавычках –
@ Fred-II- большой спасибо, что.! сортировка этой ошибки, но теперь выпадающий список пуст! – clh