从mysql中选择项目

时间:2010-01-22 02:39:29

标签: php mysql html

制作一个简单的电影评论网站来练习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 个答案:

答案 0 :(得分:2)

试试这个,修复包括关闭你的选项标签,并在MySQL循环中包含选项标签,以便每当有新项目时输出选项标签。

<?
$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>

答案 1 :(得分:0)

一方面,每次你的循环重复时你都会覆盖$ movieTitle ...你不想在选择列表中显示所有电影标题吗?

答案 2 :(得分:0)

如果要显示所有电影片名,则需要阅读结果并将其全部存储起来。目前,每次从结果中提取记录时,您都会覆盖$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>