无法使用$ _GET/$ _REQUEST方法从网址php中获取ID
问题描述:
我无法从php中使用$_GET/$_REQUEST
获取网址ID。
我的链接
http://localhost/Social/single.php?post_id=1
我的代码
function single_post() {
if (isset($_REQUEST['post_id'])) {
global $con;
$get_id = $_REQUEST['post_id'];
$get_posts = "SELECT * FROM posts (post_id) VALUES ('$get_id')";
$run_posts = mysqli_query($con,$get_posts);
if($run_posts) {
echo "SUCCESS.";
} else {
echo "FAILED.";
}
}
}//singlepost ends here
返回 “失败”。我尝试了其他所有可以在互联网上找到的方法。
答
实际上你所得到的ID 但 它给你失败了,因为你的SQL查询是不正确的
$get_posts = "SELECT * FROM posts (post_id) VALUES ('$get_id')";
改变它像
$get_posts = "SELECT * FROM posts where post_id=$get_id";
如果您尝试使用fe tch该帖子的帖子内容post_id
答
SELECT查询应该这样写
"SELECT * FROM posts WHERE post_id='$post_id'"
你的问题不是你无法获得post_id,而是你的选择查询无效。 **您应该检查您的错误日志中是否有错误消息。**此外,您可以[SQL注入](http://php.net/manual/en/security.database.sql-injection.php)和应该真正使用[Prepared Statements](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)而不是连接你的查询。特别是因为你没有逃避用户输入! –
谢谢Magnus。我试着改变我的SELECT查询。它的工作现在。 – Himakar
请标记答案,然后至少投票 –