выбрать предметы из MySQL - PullRequest
1 голос
/ 22 января 2010

создание простого сайта с обзором фильмов для практики PHP. на одной странице (форма) я пишу заголовок, проверяю и отправляю, затем он добавляет информацию в mysql. Я пытаюсь создать страницу, где я могу удалить отзывы, которые я написал. Я собираюсь сделать это, возвращая все заголовки в тег формы, где я могу выбрать, а затем отправить эту форму на страницу процесса и удалить элемент.

возникли проблемы с оператором WHILE и оператором SQL.

$conn = mysql_connect($host, $user, $password)
    or die("couldn't make connection");

mysql_select_db('cms', $conn)
    or die("couldn't select database");

$sql = "SELECT * FROM frontPage";

$sql_result = mysql_query($sql, $conn)
    or die("couldn't execute query");

while($row = mysql_fetch_array($sql_result)) {
    $movieTitle = $row['title'];
}


?>






<form method="post" action="deleteReview_process.php">

<select name="title">
    <option><?php echo $movieTitle; ?>
</select>

<input type="submit" name="delete" id="delete" value="delete" />

 </form>

Ответы [ 3 ]

2 голосов
/ 22 января 2010

Попробуйте, исправления включают закрытие вашего тега option и включение тега option в цикл MySQL, чтобы тег option выводился при каждом появлении нового элемента.

<?
$conn = mysql_connect($host, $user, $password)
    or die("couldn't make connection");

mysql_select_db('cms', $conn)
    or die("couldn't select database");

$sql = "SELECT * FROM frontPage";

$sql_result = mysql_query($sql, $conn)
    or die("couldn't execute query");
?>
<form method="post" action="deleteReview_process.php">
<select name="title">
<?
while($row = mysql_fetch_array($sql_result)) {
    $movieTitle = $row['title'];
?>
    <option><?php echo $movieTitle; ?></option>
<?

}
?>
</select>
<input type="submit" name="delete" id="delete" value="delete" />
</form>
0 голосов
/ 22 января 2010

Если вы хотите отобразить все заголовки фильмов, вам нужно прочитать результаты и сохранить их все. В настоящее время вы перезаписываете $movieTitle каждый раз, когда извлекаете запись из вашего результата. Попробуйте что-то вроде этого:

$titles = array();
while($row = mysql_fetch_array($sql_result)) {
    $titles[] = $row['title'];
}

//...

<select name="title">
    <option><?php echo implode("</option>\n<option>",$titles); ?></option>
</select>
0 голосов
/ 22 января 2010

Ну, во-первых, вы перезаписываете $ movieTitle каждый раз, когда ваш цикл повторяется ... разве вы не хотите отображать все названия фильмов в вашем списке выбора?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...