在本文中,我们将带你了解如果isset$_POST在这篇文章中,我们将为您详细介绍如果isset$_POST的方方面面,并解答如果爱忘了常见的疑惑,同时我们还将给您一些技巧,以帮助您实现更有效的$_P
在本文中,我们将带你了解如果isset $ _POST在这篇文章中,我们将为您详细介绍如果isset $ _POST的方方面面,并解答如果爱忘了常见的疑惑,同时我们还将给您一些技巧,以帮助您实现更有效的$ _POST与$ _SERVER ['REQUEST_METHOD'] =='POST'、chrome浏览器上isset($_POST[''submit''])不返回ture、chrome浏览器下isset($_POST[''submit''])不返回ture、chrome浏览器下isset($_POST[''submit''])不返回ture,该如何解决。
本文目录一览:- 如果isset $ _POST(如果爱忘了)
- $ _POST与$ _SERVER ['REQUEST_METHOD'] =='POST'
- chrome浏览器上isset($_POST[''submit''])不返回ture
- chrome浏览器下isset($_POST[''submit''])不返回ture
- chrome浏览器下isset($_POST[''submit''])不返回ture,该如何解决
如果isset $ _POST(如果爱忘了)
我在一页上有一个表单提交到另一页。在那里,它检查输入邮件是否已填充。如果是这样,则执行某些操作,如果未填满,请执行其他操作。我不明白为什么即使我发送一个空表格,它总是说它已设置。遗漏或错了什么?
step2.php:
<form name="new user" method="post" action="step2_check.php"> <input type="text" name="mail"/> <br /> <input type="password" name="password"/><br /> <input type="submit" value="continue"/></form>
step2_check:
if (isset($_POST["mail"])) { echo "Yes, mail is set"; } else { echo "N0, mail is not set";}
答案1
小编典典即使没有填写,大多数表单输入总是被设置的,因此您也必须检查是否为空。
由于!empty()
已经检查了两者,因此您可以使用以下命令:
if (!empty($_POST["mail"])) { echo "Yes, mail is set"; } else { echo "No, mail is not set";}
$ _POST与$ _SERVER ['REQUEST_METHOD'] =='POST'
如何解决$ _POST与$ _SERVER [''REQUEST_METHOD''] ==''POST''?
好吧,他们确实没有做同样的事情。
$_SERVER[''REQUEST_METHOD'']
包含请求方法(惊奇)。
$_POST
包含任何帖子数据。
POST请求可能不包含POST数据。
我检查了请求方法—实际上,我从未想过要测试$_POST
阵列。不过,我检查了必填字段。因此,空的发布请求会给用户很多错误消息-这对我来说很有意义。
解决方法
有人称我的Snipplr提交内容之一为“废话”,因为我使用的if ($_SERVER[''REQUEST_METHOD''] == ''POST'')
不是if
($_POST)
检查请求方法对我来说似乎更正确,因为那是我真正想要做的。两者之间在操作上有区别吗?还是仅仅是代码清晰性问题?
chrome浏览器上isset($_POST[''submit''])不返回ture
chrome浏览器下isset($_POST[''submit''])不返回ture
在IE下能成功,但在chrome下不能,是否是浏览器自身的BUG?
------解决方案--------------------
代码没有问题,你怎么测试的。chrome 什么版本。
------解决方案--------------------
你到gg浏览器里看看有没有 gg的开发人员工具跟一下
------解决方案--------------------
注意缓存
------解决方案--------------------
Chrome是有问题的,但是采用提交按钮的值的做法尽量不要采用。另外如果用javascript的form.submit()的话,IE下也不提交的。建议采用hidden变量。
------解决方案--------------------
直接打印$_POST看下有没有
------解决方案--------------------
chrome浏览器下isset($_POST[''submit''])不返回ture
在IE下能成功,但在chrome下不能,是否是浏览器自身的BUG?
回复讨论(解决方案)
贴代码来。
Chrome浏览器是最遵守W3C标准的了,只能说你的代码有不符合W3C标准的地方
chrome 右键-》审查元素-》NETWORK。查看有关信息。
if(isset($_POST[''submit1''])){
echo "You like the following languages:
";
foreach($_POST[''lang''] AS $lang){
$lang=htmlentities($lang);
echo "$lang
";
}
}
代码没有问题,你怎么测试的。chrome 什么版本。
18.0.1025.151 直接chrome查看的
你点提交了吗?
先看看你有没有POST ''submit1'' 吧...
嗯啊,IE9是对的,我在想是不是chrome不能通过$_POST返回表单submit的数据类型
你点提交了吗?
有啊
先看看你有没有POST ''submit1'' 吧...
怎么个有法?你从哪判断有?
有啊
引用 7 楼 的回复:
先看看你有没有POST ''submit1'' 吧...
IE9能够打印出submit后的表单内容,我通过POST方式传递,然后通过$_POST获取的
怎么个有法?你从哪判断有?
引用 9 楼 的回复:
有啊
引用 7 楼 的回复:
先看看你有没有POST ''submit1'' 吧...
$_POST[''submit1'']能够获取到submit1这个字符串
你到gg浏览器里看看有没有 gg的开发人员工具跟一下
$_POST[''submit1'']能够获取到submit1这个字符串
注意缓存
Chrome是有问题的,但是采用提交按钮的值的做法尽量不要采用。另外如果用javascript的form.submit()的话,IE下也不提交的。建议采用hidden变量。
直接打印$_POST看下有没有
直接打印$_POST看下有没有
+1
你先看看你的$_POST数组是否有值,如果数组为空,那么你的判定肯定是错的,因为都没有这个数组元素存在。而且为了避免重复提交等问题,你还是用javascript提交表单比较好。
我也碰到了同样的问题,通过IE用POST提交数组没有问题,但是chrome不行,用print_r($_POST)看不到提交的数组变量。
chrome浏览器下isset($_POST[''submit''])不返回ture,该如何解决
chrome浏览器下isset($_POST[''submit''])不返回ture
在IE下能成功,但在chrome下不能,是否是浏览器自身的BUG?
------解决方案--------------------
代码没有问题,你怎么测试的。chrome 什么版本。
------解决方案--------------------
你到gg浏览器里看看有没有 gg的开发人员工具跟一下
------解决方案--------------------
注意缓存
------解决方案--------------------
Chrome是有问题的,但是采用提交按钮的值的做法尽量不要采用。另外如果用javascript的form.submit()的话,IE下也不提交的。建议采用hidden变量。
------解决方案--------------------
直接打印$_POST看下有没有
------解决方案--------------------
+1
你先看看你的$_POST数组是否有值,如果数组为空,那么你的判定肯定是错的,因为都没有这个数组元素存在。而且为了避免重复提交等问题,你还是用javascript提交表单比较好。
关于如果isset $ _POST和如果爱忘了的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于$ _POST与$ _SERVER ['REQUEST_METHOD'] =='POST'、chrome浏览器上isset($_POST[''submit''])不返回ture、chrome浏览器下isset($_POST[''submit''])不返回ture、chrome浏览器下isset($_POST[''submit''])不返回ture,该如何解决的相关知识,请在本站寻找。
本文标签: