所以,我试图通过从textblock(html)获取名称来显示使用电影名称movie_id的值。但是显示的页面是空白的,如果我在查询中手动添加一个名称,例如 name="skyfall" 而不是变量,则会显示结果。
include './connection.php';
$movie_tf=$_POST['movie_tf'];
$getMovieIdQuery="SELECT movie_id FROM MOVIE WHERE name='$movie_tf'";
$query= mysql_query($getMovieIdQuery);
if (!$query){
echo 'error' . mysql_error($dbconn);
}
$getMovieIdQueryFetchRow= mysql_fetch_row($query);
echo $getMovieIdQueryFetchRow[0];
mysql_close($dbconn);
网页表单:
<form action="operations.php" method="GET">
Movie:<input type="text" name="movie_tf"/> </br>
<input type="submit" value="submit"/>
</form>
您正在将method="GET"
用于表单,然后是 POST 数组$_POST['movie_tf']
使用method="post"
或者$_GET['movie_tf']
选择权在您手中。
- 方法和数组类型必须匹配。
奇怪的是,你也不会因此而出错。
- 我曾经以艰难的方式吸取过这一教训。
您当前的代码对SQL注入开放。将 mysqli_*
与预准备语句一起使用,或将 PDO 与预准备语句一起使用。