此代码
<?php echo "Likes: ".$r['votes_up']." "; echo "Dislike: ".$r['votes_down'].""; ?>
不要在表格中发布'votes_up''votes_down'的值
我无法理解这个问题!我有这个确切的代码在不同的页面上工作,但它不会在此。
继承了整个代码......
<div class="message">
<?php
$sql = mysql_query("SELECT * FROM threads WHERE id = '" . $_GET['id'] . "'") or die(mysql_error());
while($r = mysql_fetch_array($sql)) {
$posted = date("jS M Y h:i",$r['posted']); echo "".$r['author']." $posted";?>
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-text="<?php echo "".$r['message'].""; ?>">
Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
<div class="message2"><?php echo "".$r['message'].""; }?></div>
<?php echo "Likes: ".$r['votes_up']." "; echo "Dislike: ".$r['votes_down'].""; ?>
</div>
<br/>
<hr>
有人可以帮忙吗?它让我疯了
答案 0 :(得分:2)
代码的第8行
<div class="message2"><?php echo "".$r['message'].""; }?></div>
为什么在结束?>
之前关闭大括号?
答案 1 :(得分:2)
你好像已经在这里关闭了WHILE循环:
<div class="message2"><?php echo "".$r['message'].""; }?></div>
注意大括号。
因此,votes_up和votes_down没有值。
答案 2 :(得分:1)
您的大括号放在最后一个echo语句之前,因此$ r变量超出范围。
将}移动到页面中的后面,如此
<div class="message">
<?php
$sql = mysql_query("SELECT * FROM threads WHERE id = '" . mysql_real_escape_string($_GET['id']) . "'") or die(mysql_error());
while($r = mysql_fetch_array($sql))
{
$posted = date("jS M Y h:i",$r['posted']);
echo $r['author']." ".$posted;
?>
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-text="<?php echo $r['message']; ?>">
Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
<div class="message2">
<?php
echo $r['message'];
?>
</div>
<?php
echo "Likes: ".$r['votes_up']." ";
echo "Dislike: ".$r['votes_down'];
}
?>
</div>
<br/>
<hr>
另请注意$ sql var中对mysql_real_Escape_string的调用。这样可以防止令人讨厌的SQL注入
答案 3 :(得分:0)
这是因为$r['...']
变量超出了放置它的范围。
更好的方法(假设你只获取一行:
<?
$sql = mysql_query("SELECT * FROM threads WHERE id = '" . $_GET['id'] . "'") or die (mysql_error());
$row = mysql_fetch_assoc($sql);
?>
<div> ... </div>
<?php echo "Likes: " . $row['votes_up'] . " Dislike: " . $row['votes_down']; ?>