0

我以前从 SO 那里得到了一些帮助。但是这里有一些问题。

var userid="12";                    
                        var $form = $("<form id='form1' method='post' action='start.php'></form>");
                        form.append('<input type="hidden" name="userid" value="'+userid+'" />'); 
                        $('body').append($form);
                        window.form1.submit();

开始.php

<?php
 $x=$_POST['userid'];
?>

这里有什么问题?

它在 start.php 上给出错误

Notice: Undefined index: userid in /opt/lampp/htdocs/testCase2/start.php on line 2
4

6 回答 6

2

$_POST['userid'];没有设置并且在这种情况下不使用,数组var中没有这样的变量。您可以使用:useridPOST

if( isset( $_POST['userid'] ) ){
    $x=$_POST['userid'];
}
于 2013-11-04T06:53:45.027 回答
2

var从 php 中删除

<?php
  $x=$_POST['userid'];
?>
于 2013-11-04T06:54:03.863 回答
1

只需访问它

<?php

 $x=$_POST['userid'];
?>

并不是var $x;

<form>应该是这样的

var userid="12";                    
                        var $form = $("<form id='form1' method='post' action='start.php'>");
                        form.append('<input type="hidden" name="userid" value="'+userid+'" /></form>'); 
                        $('body').append($form);
                        window.form1.submit();
于 2013-11-04T06:54:00.463 回答
1

您定义var $form,然后只调用它form——您需要一个一致的变量名。顺便说一句,$form有点混乱,可能会导致调试出现问题;为了清楚起见,尝试类似的东西objForm

此外,正如其他人指出的那样,var从您的 PHP中删除并使用 。isset()

于 2013-11-04T06:57:44.937 回答
1

您可以尝试这种方法,在表单标签内移动隐藏的输入。

     var $form = $("<form id='form1' method='post' action='start.php'><input type='hidden' name='userid' value='"+userid+"' /></form>");
      $('body').append($form);
      window.form1.submit();


 <?php
   if(isset($_POST['userid'])){
      $x=$_POST['userid'];
   }
 ?>
于 2013-11-04T06:57:45.273 回答
1

在您的代码中,您使用 $form 作为变量,但附加仅使用 form.append。请将其更改为 $form.append。请检查下面的代码。希望它应该工作。

           var userid="12";                    
           var $form = $("<form id='form1' method='post' action='start.php'></form>");
           $form.append('<input type="hidden" name="userid" value="'+userid+'" />'); 
           $('body').append($form);
           window.form1.submit();
于 2013-11-04T07:07:42.157 回答