У меня проблема с преобразованием результатов запроса mysqli в переменные, которые я могу заполнить текстовыми областями. Я пытаюсь найти примеры этого по всему Интернету, и я не могу найти что-то, что разрешает мою проблему.Устранение неполадок mysqli_fetch_assoc()
В моем последнем проекте в этих строках использовался mysql, а не mysqli, так что это не совсем то же самое, плюс мой проект достаточно разнообразен, чтобы не допускать копирования-вставки кода.
Я пытаюсь подключиться к базе данных, извлекать информацию, используемую в элементе post в качестве элемента поиска, и заполнять текстовые поля результатами. Я еще не получил возможность изменять содержимое текстовых областей, так как мне не удалось выяснить, как вернуть значение, которое я могу добавить в переменную/массив.
Я не очень опытен с PHP, поэтому я не знаю каждого из них и из языка. Любая помощь будет высоко оценена.
код приведен ниже:
<html>
<head></head>
<script language="javascript" type="text/javascript">
function populateForm(jack) {
document.getElementById('id_cubenum').value = jack;
document.getElementById('id_firstname').value = resultArray[1];
document.getElementById('id_lastname').value = resultArray[2];
document.getElementById('id_username').value = resultArray[3];
}
</script>
<body>
<form>
ID: <input type="text" name="elem_cubenum" id="id_cubenum" maxlength="3" size="25" disabled><br>
<br>
First Name: <br>
<input type="text" name="elem_firstname" id="id_firstname"><br>
Last Name: <br>
<input type="text" name="elem_lastname" id="id_lastname"><br>
Username: <br>
<input type="text" name="elem_username" id="id_username" maxlength="8" size="8"> <br><br>
<hr>
Department:<br>
<select name="elem_dept" id="id_dept">
<option value="a">A</option>
<option value="d">D</option>
<option value="r">R</option>
<option value="m">M</option>
<option value="o">O</option>
</select><br><br>
<hr>
Machine Name: <br>
<input type="text" name="elem_machname" id="id_machname" maxlength="16"><br>
Machine Inv#: <br>
<input type="text" name="elem_machnum" id="id_machnum" maxlength="5"><br>
Monitor Inv#: <br>
<input type="text" name="elem_monnum" id="id_monnum" maxlength="5"><br><br>
<hr>
Operating System:<br>
<select name="elem_os" id="id_os">
<option value="winxp">Windows XP</option>
<option value="win7">Windows 7</option>
<option value="other">Other</option>
</select>
<br><hr>
</form>
<?php
$dbhost = "xxxxxxxxxxx";
$dbname = "xxxxxxxxxxx";
$dbuser = "xxxxxxxxxxx";
$dbpass = "xxxxxxxxxxx";
$p_getJack = $_POST['elem_seatNum'];
$conn = mysqli_connect($dbhost,$dbuser,$dbpass,$dbnme);
$query = "SELECT * FROM locations WHERE locateid = '$p_getJack'";
echo '<img src="check.jpg" alt="Database Connection Made">' . 'Connection to the server was successfully made. <br>Jack Number: ' . $p_getJack . '<br><hr><br>';
if (mysqli_connect_errno()) {
echo "Failed to connect! " . mysqli_connect_error();
}
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
printf("The results of %u and %s are listed.",$row["firstname"],$row["username"]);
mysqli_close($conn);
?>
</body>
</html>
Это результат:
Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in /home/a7060806/public_html/form.php on line 66
Любые идеи о том, что я делаю неправильно здесь ...? Я знаю, что информация о подключении верна, потому что она скопирована с предыдущей страницы, и она отлично работает.
Что не работает? Что вы видите, если вы делаете var_dump ($ row)? – Dave
Разница между mysql_ и mysqli_ в этом отношении очень мала! – Strawberry
Я редактировал в результатах того, что страница бросает на меня, когда компилируется страница. –