显示数据库中的下一行


Showing next row in database

我一直在寻找一种创建非常简单博客的方法。当我查看堆栈溢出时。我偶然发现了一种方法,它可能对我有用。但是其中有这个错误。我找不到从哪里得到这个代码的问题。无论如何,首先我得到了一个错误,我已经修复了,但我知道我无法得到任何回应。我的桌子有一些内容,但没有回音。

所以我得到了我的数据库:id,标题,日期,发布者,文章。我得到了PHP代码:

    <?php
$con = mysql_connect("localhost","root","usbw");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("prive", $con);
$result = mysql_query("SELECT * FROM blog LIMIT {$_POST['count']},1");
if($result === FALSE) { 
    die(mysql_error()); // TODO: better error handling
}
while($row = mysql_fetch_array($result))
  {
  echo "<div class='result'>".$row['titel'] . " " . $row['datum']."</div>";
  }
mysql_close($con);
?>

了解我的html

    </head>
    <body>

    <div id="content">
<div id="results">
   <div class="result"></div>
   <div class="result"></div>
   <div class="result"></div>
</div>
<a href="#" id="showMore" />Show more</a>
    </div>
<script type="text/javascript">
$(function(){
      $('#showMore').click(function(event) {
         event.preventDefault();
         $number = $('.result').size();
        $.ajax({
           type: "POST",
           url: "getNext.php",
           data: {"count":$number},
           success: function(results){
             $('#results').append(results);
           }
         });
      });
});
</script>

首先,每次都应该检查用户输入。我建议你在php文件中做这样的事情:

$query = "SELECT * FROM blog";
if(isset($_POST['count']))
{
    $query .= " LIMIT " . intval($_POST['count'] . ",1");
}
$result = mysql_query($query);

这应该行得通。但下一个问题是javascript。您的代码中有一个错误。在javascript中,您使用var而不是$定义变量(这是php)。所以使用:

var number = $('.result').size();
...
data: {"count": number},