1

フォーム付きのhtmlページがあります。フォームには、次のように、各結果の行で使用できる検索機能と削除機能があります。

..<td><img src="delete.gif" style="cursor: pointer" onClick="javascript:delete();"></td>..

    <input type="submit"   value="search" onClick="javascript:search();">

で。jsファイルjqueryのajax関数を介してパラメーターをphpファイルに渡す両方の関数があります。

phpファイルに行きましょう:

検索機能に問題はありません。$_REQUESTでパラメーターを取得し、選択クエリを実行します。

フォームのdelete.gifをクリックすると、削除機能が表示されます。クエリは選択された行を削除し、検索関数を呼び出す必要がある直後に、削除された行なしで結果を表示できるようにします。

そして、ここで問題が発生します。どちらの関数も$ _REQUESTを使用してクエリを作成するため、削除後に検索関数を呼び出すと、削除パラメーターが$_REQUESTに格納されます。

最初の検索で$_REQUESTにあった検索パラメーターを復元して、削除後にその検索を再度実行できるようにするにはどうすればよいですか?

phpファイルの削除機能を垣間見ることができます:

function deleteResult($_REQUEST['param1'],$_REQUEST['param2'], $_REQUEST['param3'])
{  
    $strSqlDelete = "DELETE FROM …"; // query working in database
    //here the connecting to the database code
        $result = search($_REQUEST['param1'],$_REQUEST['param2'], $_REQUEST['param3']);
        echo utf8_encode($result);
        exit();
}

どうもありがとう!!

4

3 に答える 3

1

It's not too safe to use $_REQUEST superglobal. Use $_POST or $_GET depending on your method. To store something for later use use $_SESSION suberglobal array.

    session_start(); // In the beginning of your script

...

    $_SESSION['param1'] = $_REQUEST['param1'];

Then you can use $_SESSION['param1'] anywhere else within your site even after page reloading.

于 2012-05-03T11:10:33.453 に答える
0

Store it in the local variables or you can store them into the cookies. So that you can use it as many times you want.

于 2012-05-03T11:09:50.680 に答える
0

あなたはまた、javascriptでそれを行うことができます

サーバー側を再度呼び出して結果を再度レンダリングするのではなく、この行を削除して削除することをお勧めします

不要なヒットをサーバー側に保存するようになりました

例えば

// in JS
   function delete(this){
      $.ajax({}); // call ajax to delete from server side (php)<br>
      delete this row (tr);<br>
   }
于 2012-05-03T11:15:35.750 に答える