Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从mysql中选择项目_Php_Mysql_Html - Fatal编程技术网

Php 从mysql中选择项目

Php 从mysql中选择项目,php,mysql,html,Php,Mysql,Html,制作一个简单的电影评论网站来练习PHP。在一个页面(一个表单)上,我写一个标题,审核并提交,然后将信息添加到mysql。我正在尝试创建一个页面,在那里我可以删除我写的评论。我将把所有标题返回到一个表单标签中,在那里我可以选择on,然后将该表单提交到一个流程页面并删除该项 WHILE语句和SQL语句有问题 $conn = mysql_connect($host, $user, $password) or die("couldn't make connection"); mysql_sel

制作一个简单的电影评论网站来练习PHP。在一个页面(一个表单)上,我写一个标题,审核并提交,然后将信息添加到mysql。我正在尝试创建一个页面,在那里我可以删除我写的评论。我将把所有标题返回到一个表单标签中,在那里我可以选择on,然后将该表单提交到一个流程页面并删除该项

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>
$conn=mysql\u connect($host、$user、$password)
或者死亡(“无法建立联系”);
mysql\u选择\u数据库('cms',$conn)
或死亡(“无法选择数据库”);
$sql=“从frontPage选择*”;
$sql\u result=mysql\u查询($sql,$conn)
或者死亡(“无法执行查询”);
while($row=mysql\u fetch\u数组($sql\u result)){
$movieTitle=$row['title'];
}
?>

首先,每次循环重复时都会覆盖$movieTitle…是否要显示选择列表中的所有电影标题?

如果要显示所有电影标题,需要读取结果并将其全部存储。当前,每次从结果中提取记录时,都会覆盖
$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>
$titles=array();
while($row=mysql\u fetch\u数组($sql\u result)){
$titles[]=$row['title'];
}
//...

试试这个,修复方法包括关闭选项标记,并将选项标记包含在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>

您为什么有问题?我觉得不错,试着在while循环中回显
$movieTitle