0

我有一个 PHP 文件,我在其中显示一个带有 mysql 表数据的 html 表 (HTML)。

<?php
include 'connexion.php';
session_start();
$idfirm = $_REQUEST['idfirm'];
$namefirm = $_REQUEST['namefirm'];

表中的行具有

<tr class="clickableRow"...

然后在行单击(javascript)上,我希望能够调用(POST)另一个 PHP 文件,该文件将根据表行中的一些信息显示其他信息。我很难做到这一点。

到目前为止我所做的是:

echo '
...
jQuery(document).ready(function($) {
          $(".clickableRow").click(function() {
                var tableData = $(this).children("td").map(function() {
                    return $(this).text();
                }).get();

// So I can access the field data either like this
                var myID = $.trim(tableData[0]); 
// or like this:
                var name = $(this).closest(\'tr\').find(\'td:eq(1)\').text();
                alert(myID);';
echo"  // here I would need to access some variables that I received above in PHP from POST
                    var namefirmx = '{$namefirm}';
                    var idfirmx = '{$idfirm}';
";
// and here I would like to call another PHP file (with POST) that will display info about the employee

那么,我怎样才能对另一个 php 文件进行 POST 并发送 POST 变量:name、namefirmx、idfirmx、myID

我不确定如何进行 POST。

我相信除了javascript之外没有其他方法可以调用POST。(请记住,必须在单击行时进行 POST)

请在这里帮我...

4

3 回答 3

1

我使用 SO previous question 解决了我的问题。我不确定如何处理这个问题。无论如何,答案是:在 javascript 中添加一个函数,并用我的变量调用它。功能是:

        function post_to_url(path, params, method) {
            method = method || "post"; // Set method to post by default if not specified.

            // The rest of this code assumes you are not using a library.
            // It can be made less wordy if you use one.
            var form = document.createElement("form");
            form.setAttribute("method", method);
            form.setAttribute("action", path);

            for(var key in params) {
                if(params.hasOwnProperty(key)) {
                    var hiddenField = document.createElement("input");
                    hiddenField.setAttribute("type", "hidden");
                    hiddenField.setAttribute("name", key);
                    hiddenField.setAttribute("value", params[key]);

                    form.appendChild(hiddenField);
                 }
            }
            document.body.appendChild(form);
            form.submit();
        }            
于 2013-11-10T17:12:04.143 回答
1

您始终可以在 js 代码中添加 php 变量,如下所示:

<?php 
$x="ABC";
?>
<script language="javascript">
jsX="<?php echo $x;?>";
alert(jsX);
</script>
于 2013-11-10T16:25:49.387 回答
1

php脚本的快速示例,遗漏了一些html标签,但我想你会得到一张图片:

<?php 
print_r($_POST);
?>

<script src="http://codeorigin.jquery.com/jquery-1.10.2.js"></script>
<script>
    jQuery(document).ready(function($) {
          $(".clickableRow").click(function() {
            $(this).find("form").submit();
          });
    });            
</script>

<table border="1">
  <tr class="clickableRow">
     <td>
          <form method="post"><input type="hidden" name="p1" value="v1"><input type="hidden" name="p2" value="v2"></form>
          v1
     </td>
     <td>v2</td>
  </tr>
</table>  
于 2013-11-10T16:57:31.023 回答