PHP POST不工作

<?php echo $_POST['ss'];?> <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post"> <input name="ss" type="text" /> <input type="submit" name="submit"> </form> 

点击提交时,这个代码应该打印文本框中input的任何名称=“ss”。
但它不打印。 使用方法=“获得”,但没有后,这是什么问题。

如果您只是刷新页面,请执行以下操作:

 action='' 

代替:

 action="<?php echo $_SERVER['PHP_SELF'];?>" 

另外,将其添加到第2行以查看$ _POST数组中存储的内容(如果有的话):

 var_dump( $_POST ); 

嗯…所以提交时是空的? 尝试添加到您的PHP文件的顶部:

 if(empty($_SERVER['CONTENT_TYPE'])) { $_SERVER['CONTENT_TYPE'] = "application/x-www-form-urlencoded"; } 

好吧,现在检查你的php.ini(通常需要sudo或根/ etc):

 post_max_size = 8M variables_order = "EGPCS" 

你有这两个规则吗? 如果是这样,请注意您分配的内存量。 超过2048MB的任何内容都可能会给您带来麻烦,具体取决于您的系统规格。

注意:如果您对php.ini文件进行了更改,并且PHP作为apache模块运行,则需要重新启动apache。 有些东西是:

 sudo /etc/init.d/httpd restart 

一旦我设置post_max_sizeupload_max_filesize一样,我就断开了我的post方法。

我认为post_max_size必须小于upload_max_filesize
在RHEL 6.0中使用PHP 5.3.3进行testing

这可能是由于在.htaccess文件中重写了规则。将此条件添加到.htaccess文件中

 RewriteCond %{REQUEST_METHOD} !POST [NC] 

或者添加这一行

  RewriteRule ^welcome_post.php - [PT] 

我的朋友今天遇到了这个问题。 答案非常简单 – 基本上,您必须将method="POST"POST部分大写

最终的结果应该是这样的

 <?php echo $_POST['ss'];?> <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="POST"> <input name="ss" type="text" /> <input type="submit" name="submit"> </form> 

首先,确保您的networking服务(GET / POST等)按照需要使用Chrome Advanced Rest Client进行操作 。 那么你应该检查你的PHP部分。

<form action="" method="post"> method =“post”对于POST数据很重要。

改用PHP REQUEST:

 <form action="" method="post"> <input type="email" name="mail"> <input type="submit" name="submit" value="Submit"> </form> PHP: if(isset($_REQUEST['submit'])){ $val= $_REQUEST['mail']; echo $val; } 

用这个来代替;

 $variable_name = $_REQUEST["ss"]; echo $variable_name; 

改变你的IDE,我使用phpstorm,这是太棒了,但是当我使用dreamweaver它可能工作,为testing你可以直接从wampserver本地主机运行你的页面,我改变默认端口的Apache,我觉得问题是从那里,如果你使用phpstorm或改变Apache服务器的端口改变你的IDE。