Php 将表单值传递给函数以获取数组值
我已经阅读了几篇教程,试图解决这个问题。我的代码可以很好地处理文本输入框,但是我也尝试将这个单选框传递给我的函数,并使用它来获取数组值 稍后我将实现表单验证和清理等功能,但现在我只希望能够在函数中输出数组结果,具体取决于选择的单选按钮。这是我尝试过的代码: index.phpPhp 将表单值传递给函数以获取数组值,php,arrays,function,Php,Arrays,Function,我已经阅读了几篇教程,试图解决这个问题。我的代码可以很好地处理文本输入框,但是我也尝试将这个单选框传递给我的函数,并使用它来获取数组值 稍后我将实现表单验证和清理等功能,但现在我只希望能够在函数中输出数组结果,具体取决于选择的单选按钮。这是我尝试过的代码: index.php <?php if (isset($_POST['submit'])) { $data = $_POST['name']; // the data from text input. $colour = $
<?php
if (isset($_POST['submit'])) {
$data = $_POST['name']; // the data from text input.
$colour = $_POST['colour']; // data from colour radio.
}
?>
...
<form action="/app.php" method="post">
<input type="text" name="name">
<input name="colour" type="radio" value="1">Red
<input name="colour" type="radio" value="2">Blue
<input name="colour" type="radio" value="3">Green
<input type="submit" name="submit" value="Submit">
</form>
<img src="pngfile.php?data=<?php print urlencode($data);?>">
...
红色
蓝色
绿色
">
pngfile.php
<?php
require_once 'functions.php';
$textdata = urldecode($_GET['data']);
$colourdata = urldecode($_GET['colour']);
process($textdata,$colourdata);
exit;
?>
functions.php
<?php
/* Generate Image */
function process($textdata, $colourdata)
{
$colour_array = [
"1" => "#9E2A2B",
"2" => "#3E5C76",
"3" => "#335C67",
];
...
在功能上
function process($textdata, $colourdata)
{
$colour_array = [
"1" => "#9E2A2B",
"2" => "#3E5C76",
"3" => "#335C67",
];
$color = isset($colour_array[$colourdata]) ? $colour_array[$colourdata] : false;
...
GET!=POST….as$colordata=urldecode($\u GET['color']);
永远无法通过。你是指pngfile.php中的代码吗?如果我将其更改为POST,它将不起作用,但在getI编辑我的评论时会起作用;请使用错误报告。感谢你的回复,这一行是否也应该发布?$textdata=urldecode($\u GET['data'));@Jimmy:此表单的所有字段均为“是”,因为您已为所有表单选择了“在此发布”方法:
$_GET['colour'] edit to $_POST['colour']
function process($textdata, $colourdata)
{
$colour_array = [
"1" => "#9E2A2B",
"2" => "#3E5C76",
"3" => "#335C67",
];
$color = isset($colour_array[$colourdata]) ? $colour_array[$colourdata] : false;
...