1

一部のphp/javascriptコードで次の問題が発生しています。3 つのページがありますindex.phpresult.phppagination.php。これはコードです(ここでは本当に簡単です):

index.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 という 3 番目のページがあります。

<?php
  //Print the contents

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

わかりましたので、問題は(非常に多くのサークルで申し訳ありません)からindex.phpのデータが、使用するjavascriptを使用して、データが出力されているresult.phpに送信されていることですpagination.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 に答える