Php 选择数据,其中id=url的一部分
我编写这段代码是为了获取12345,并在bithumula.co/posts/12345的mysql查询中选择它,以便查询可以选择id=12345的数据 例如: 当前url:bithumor.co/posts/12345 选择:id=12345的数据 代码如下:Php 选择数据,其中id=url的一部分,php,mysqli,Php,Mysqli,我编写这段代码是为了获取12345,并在bithumula.co/posts/12345的mysql查询中选择它,以便查询可以选择id=12345的数据 例如: 当前url:bithumor.co/posts/12345 选择:id=12345的数据 代码如下: <?php $tokens = explode("/", $_SERVER[REQUEST_URI]); $number = $tokens[count($tokens) - 1]; $sql = "SELECT id, post
<?php
$tokens = explode("/", $_SERVER[REQUEST_URI]);
$number = $tokens[count($tokens) - 1];
$sql = "SELECT id, post_title, username, content_url, pro_pic, username FROM posts WHERE id = ".$number;
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<br><div class='entire_post'><center><img class='pro_pic' src=http://cdn.bithumor.co/pro_pics/" . $row['pro_pic']. "></center><title>" . $row['post_title']. " </title><center><font face='HelveticaNeue-Light' font size='5'>" . $row['username']. "</font> </center><center><img class='upload' src=http://cdn.bithumor.co/uploads/" . $row["content_url"]. " width='100%'></center> " . $row["id"]. "<br></div>";
}
$conn->close();
?>
我做错了什么?如何修复它?-您缺少一个}来关闭if语句 -您可以删除if语句: 而不是:
if ($result->num_rows > 0)
{
// output data of each row
while($row = $result->fetch_assoc())
{
echo "<br><div class='entire_post'><center><img class='pro_pic' src=http://cdn.bithumor.co/pro_pics/" . $row['pro_pic']. "></center><title>" . $row['post_title']. " </title><center><font face='HelveticaNeue-Light' font size='5'>" . $row['username']. "</font> </center><center><img class='upload' src=http://cdn.bithumor.co/uploads/" . $row["content_url"]. " width='100%'></center> " . $row["id"]. "<br></div>";
}
}
只需使用:
while($row = $result->fetch_assoc())
{
echo "<br><div class='entire_post'><center><img class='pro_pic' src=http://cdn.bithumor.co/pro_pics/" . $row['pro_pic']. "></center><title>" . $row['post_title']. " </title><center><font face='HelveticaNeue-Light' font size='5'>" . $row['username']. "</font> </center><center><img class='upload' src=http://cdn.bithumor.co/uploads/" . $row["content_url"]. " width='100%'></center> " . $row["id"]. "<br></div>";
}
如果$result没有行,则语句:$result->fetch\u assoc将返回null,您将无法进入while循环。这样做是不可能的。我的意思是: http://bithumor.co/posts/12345 将无法正确执行。如果是: http://bithumor.co/posts/?12345 这可以收集或阅读。因为这类似于index.php?12345 我建议使用URL重写。通过这种方式,您可以将URL重写为URL参数。这样,url: http://bithumor.co/posts/12345 可能导致 http://bithumor.co/index.php?posts=12345
然后可以在脚本中调用变量$GET['posts'.该post不存在。@JayBlanchard这只是一个例子,页面实际上不存在。请尝试打印\r$标记,尝试回显$number。执行一些调试以确保$number是有效的数字。请准备好你的声明!或者至少将您的var转换为int:int$number