我正在使用切换可见性功能,以便在一个页面中显示和隐藏div。
点击此链接新闻会显示一个div,其中使用此代码从数据库中显示所有当前新闻。
<?php
include"scripts/connect_to_mysql.php";
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
$news="";
$sql=mysql_query("SELECT *
FROM `news`
ORDER BY date DESC");
$newsCount=mysql_num_rows($sql);
if ($newsCount>0) {
while($row=mysql_fetch_array($sql)){
$id=$row["id"];
$title=$row["title"];
$text=$row["text"];
$date=$row["date"];
$news.=' <table width="800" border="0">
<tr>
<td style="width:150px;">' . $date . '</td>
<td style="width:600px; overflow:hidden;"><a href="#?id=' . $id . '" onclick="toggle_visibility(\'news_det\');" style="color:#b19057;" >' . $title . '</a></td>
<td style="width:50px"><a href="#?id=' . $id . '" onclick="toggle_visibility(\'news_det\');" style="color:#000;">...more</a></td>
</tr>
</table>
';
}
}else {
$news="No news available yet";
}
?>
问题是,通过点击结果,会出现详细新闻应该出现的div,但我无法从数据库中获取数据。
我使用此代码获取之前链接发送的ID。
if(isset($_GET['id'])){
$newsid= preg_replace('#[^0-9]#i','',$_GET['id']);
$sql = mysql_query("SELECT * FROM news WHERE id='$newsid' LIMIT 1");
$newsCount1 = mysql_num_rows($sql);
if ($newsCount1 > 0) {
while($row = mysql_fetch_array($sql)){
$dettitle = $row["title"];
$dettext = $row["text"];
$detdate = $row["date"];
}
}
else {
echo "No news with that id";
exit();
}
}
我做错了什么?
答案 0 :(得分:0)
如何使用PHP获取变量? 假设您有一个名为people.php的PHP页面。现在,您可以使用以下URL调用此页面:
people.php?name=Joe
使用PHP,您将能够获得变量&#39; name&#39;的值。像这样:
$_GET["name"]
因此,您使用文档$_GET
来查找命名变量的值。我们来试试吧:
<html>
<head>
<title>Query string</title>
</head>
<body>
<?php
// The value of the variable name is found
echo "<h1>Hello " . $_GET["name"] . "</h1>";
?>
</body>
</html>
答案 1 :(得分:0)
可能是因为你正在使用&#39;#&#39;在链接
将href="#?id=' . $id . '"
更改为href="?id=' . $id . '"
如果您没有刷新页面,那么您应该使用ajax。