1

我有一个带有表单的 html 页面。在表单中,我有一个搜索功能和一个删除功能,可以在每个结果行中使用,方式如下:

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

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

在一个 。我有两个函数通过 jquery 的 ajax 函数将参数传递给 php 文件。

让我们转到 php 文件:

搜索功能没有问题:我通过 $_REQUEST 获取参数并执行选择查询。

通过单击表单中的 delete.gif,我进入了删除功能。该查询会在我需要调用搜索函数之后立即删除选定的行,这样我就可以在没有删除行的情况下显示结果。

麻烦来了:这两个函数都使用 $_REQUEST 来构建查询,因此在删除后调用搜索函数时,我将删除参数存储在 $_REQUEST 中。

如何在第一次搜索中恢复我在 $_REQUEST 中的搜索参数,以便在删除后再次进行搜索?

下面是php文件中delete函数的一瞥:

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

$_REQUEST使用superglobal不太安全。使用$_POST$_GET取决于您的方法。要存储一些东西以供以后使用,请使用$_SESSIONsuberglobal 数组。

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

...

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

然后,$_SESSION['param1']即使在页面重新加载后,您也可以在站点内的任何其他地方使用。

于 2012-05-03T11:10:33.453 回答
0

将其存储在局部变量中,或者您可以将它们存储到 cookie 中。这样您就可以根据需要多次使用它。

于 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 回答