案例1
如果我把它,我无法从输入
收到结束值<?php echo $_POST[tester-test-t]; ?>
<form action="" method="post"> <input type="text" name="tester-test-t" value="" /> <input type="submit" name="Send" value="Sender" /> </form>
案例2
如果我把它我可以从表格中获得价值
<?php echo $_POST['tester-test-t']; ?>
<form action="" method="post"> <input type="text" name="tester-test-t" value="" /> <input type="submit" name="Send" value="Sender" /> </form>
案例3
最后,如果我把这个,我也可以从POST表单中获得值,因为你可以看到我puto“_”并且与案例1“ - ”不一样
echo $_POST[tester_test_t];
<form action="" method="post"> <input type="text" name="tester-test-t" value="" /> <input type="submit" name="Send" value="Sender" /> </form>
问题是,在案例1中没有从帖子表格中获得价值的问题,是的,在其他情况下是''和“ - ”
问候并感谢
答案 0 :(得分:3)
案例1:
tester-test-t
表示
取常数
tester
的值,减去常量test
的值,减去常量t
的值。
减法的结果将是$_POST
数组中的关键。
你的代码中是否有这样的常量?当然,你没有。
案例2:
'tester-test-t'
只是一个字符串。您的'tester-test-t'
$_POST
案例3:
tester_test_t
再次被视为常量。你有tester_test_t
常数吗?当然,你没有。
要了解代码中出现的问题,请使用error_reporting
(感谢@Fred -ii - )
答案 1 :(得分:-1)
它可能与字符编码有关,以及如何在表单提交时将其传递给http请求。 - 可能会以某种方式编码并导致问题。
一个简单的解决方案是删除字段名称中的连字符,因此更改name =&#34; tester-test-t&#34;比如名字=&#34; TesterTestT&#34;。
我个人更喜欢指定一个动作=&#34;&#34;用另一个.php脚本的名称来处理表单。我觉得将表单提交给自己可能会让人感到困惑。
RGDS