1

我对一些 php/javascript 代码有以下问题。我有 3 页:index.php| result.phppagination.php。这是代码(这里真的很简单):

索引.php

<form action="result2.php" method="get" id="search">
<input type="text" id="query" name="query"/>
<input type="submit" id="mainsubmit" value="Search" />
</form>

result.php 获取表单的数据,但我的问题如下:在 result.php 中我使用分页,并且我有一个名为 pagination.php 的第三页:

<?php
  //Print the contents

  while($row = mysql_fetch_array($rsd))
  {
    $id=$row['msg_id'];
    title=$row['title'];
?>
   //data goes here                 
<?php
  } //while
?>

好的,所以我知道了,那么问题(对不起,有这么多圈子)是来自的数据index.php正在发送到 result.php,这是输出数据的地方,使用我使用的 javascriptpagination.php

<script type="text/javascript">
  $(document).ready(function(){
    //Display Loading Image
    function Display_Load()
    {
      $("#loading").fadeIn(900,0);
      $("#loading").html("<img src='bigLoader.gif' />");
    }
    //Hide Loading Image
    function Hide_Load()
    {
      $("#loading").fadeOut('slow');
    };

    $("#pagination li:first").css({'color' : '#FF0084'}).css({'border' : 'none'});

    Display_Load();

    $("#results").load("pagination_data.php?page=1", Hide_Load());

    //Pagination Click
    $("#pagination li").click(function(){

      Display_Load();

      //CSS Styles
      $("#pagination li")
      .css({'border' : 'solid #dddddd 1px'})
      .css({'color' : '#0063DC'});

      $(this)
      .css({'color' : '#FF0084'})
      .css({'border' : 'none'});

      //Loading Data
      var pageNum = this.id;

      $("#results").load("pagination_data.php?page=" + pageNum, Hide_Load());
    });
  });
</script>

在顶部result.php我有以下代码:

<?php
  include('config.php');
  $per_page = 9; 
  $sql = "select * from tabe where title='$data'";
  $rsd = mysql_query($sql);
  $count = mysql_num_rows($rsd);
  $pages = ceil($count/$per_page)
?>

因此,我再次尝试做的是使表单从index.php发送给我,但如果输入非常混乱result.php,也将数据发送给抱歉pagination.php

4

1 回答 1

0

好的,首先你的表单目标应该被称为result.phpnot result2.php。而且我也不确定,但你不是试图从pagination_data.php

据我了解您的问题,您正在尝试实现将 100 个结果分成 10 个页面的搜索。因此,服务器需要保护您输入的搜索查询的结果,以防用户加载下一页!

在 PHP 中,您可以使用 Sessions 来实现这样的事情,一个 Session 将数据存储在 php 中以用于多个请求。(http://www.php.net/manual/en/function.session-start.php

//result.php
<?php
    //Start your session
    session_start();

    //Safe whatever you want
    $_SESSION['my_key'] = array('my', 'funny', 'data');

    //Or print stuff previously safed in the session
    echo $_SESSION['last'];
?>
于 2013-10-05T20:30:10.777 回答