很抱歉这可能是一个非常简单的问题,但我正在尝试从我的php表单中获取一些信息:
这是我当前的代码,适用于帖子名称,但是如果我也想抓住所选择的颜色框呢?
main.php
<?php
if (isset($_POST['submit'])) {
$data = $_POST['name']; // the data from the form input.
}
$colour_array = [
"red" => "#9E2A2B",
"blue" => "#3E5C76",
"green" => "#335C67",
];
?>
...
<form action="/" method="post">
<input type="text" name="name" placeholder="Acme Corp"/>
<input name="colour" type="checkbox" value="red">Red<br>
<input name="colour" type="checkbox" value="blue">Blue<br>
<input name="colour" type="checkbox" value="green">Green<br>
<input type="submit" name="submit" value="Submit">
</form>
<img src="pngfile.php?data=<?php print urlencode($data);?>"
alt="png php file">
我想我很困惑,因为目前它正在调用它:
pngfile.php
<?php
require_once 'functions.php'; // Requires and includes do not need brackets.
$inputData = urldecode($_GET['data']);
process($inputData);
exit;
?>
调用functions.php
<?php
function process($inputdata)
{
...
问题是我希望能够从表单中分离出值,因此我将输入框和颜色选择分别放在单独的变量中。
编辑:我尝试过:main.php
$data = $_POST['name'] && $_GET['colour']
的functions.php
process($inputdata, $colours)
但我不确定从哪里去。
答案 0 :(得分:0)
在HTML中,将name="colour"
更改为name="colour[]"
要在php中访问颜色的值,请执行以下操作
<?php
if(!empty($_POST['colour'])) {
foreach($_POST['colour'] as $check) {
echo $check; //echoes the value set in the HTML form for each checked checkbox.
}
}
?>