我正在macOSX上的MAMP上运行Apache服务器。我发生的问题是每个变量都在接收filter_input(),但最后一个变量是“ param”。我试过使用$ _POST ['param'];无济于事。我已经重新启动了Apache服务器,但是没有任何改变。我敢肯定这是语法错误,但是这里的所有其他问题都是无关且无济于事的。一个“ PHP表单未接收输入”根本没有帮助。任何帮助表示赞赏:)
编辑:我已经意识到不需要使用filter_input(INPUT_POST,“ param”),因为我没有提供过滤器,而$ _POST [“ param”]是更可接受的方法。
我的HTML:
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>Code Writer (JAVA)</title>
</head>
<body>
<center>
<h1>Code Writer (JAVA)</h1>
</center>
<form action="backwards.php" method="post">
<fieldset>
<label>Enter visibility level (public/private/etc)</label>
<input type="text" name="first"><br>
<label>Static Method? Y/N</label>
<input type="text" name="static"><br>
<label>Enter return type (int/double/etc)</label>
<input type="text" name="return"><br>
<label>Enter method name?</label>
<input type="text" name="method"><br>
<label>Paramaters, if any</label>
<input type="text" name="param"><br>
<button type="submit">Submit</button>
</fieldset>
</form>
</body>
</html>
我的PHP:
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>backwards.php</title>
</head>
<body>
<?php
#Gather inputs
$first = filter_input(INPUT_POST, "first");
$static = filter_input(INPUT_POST, "static");
$return = filter_input(INPUT_POST, "return");
$method = filter_input(INPUT_POST, "method");
$param = filter_input(INPUT_POST, "param");
#Add to $output
$output = $first . " ";
if ($static == "Y") {
$output .= "static" . " ";
}
$output .= $return . " ";
$output .= $method . "(";
$output .= $param;
$output .= ") {} \n";
#Print $output
print($output);
?>
</body>
</html>
答案 0 :(得分:-1)
发现运行带有@John Conde的注释“ var_dumb($ _ POST)”的网站后,它立即开始工作。删除var_dump仍然有效,尽管我对原因感到困惑。这个问题已经解决,但是我仍然对为什么现在而不是以前感到困惑。