gpt4 book ai didi

php - 使用数组自动生成更新表单

转载 作者:行者123 更新时间:2023-11-29 13:41:01 25 4
gpt4 key购买 nike

$resultUpdate = Nemesis::select("*", $table, "id = '{$id}'");
if (!$resultUpdate) {
self::show_error(QUERY_ERROR);
} elseif ($resultUpdate->num_rows > 0) {
$out .= '<div class="form-desc">' . $formDesc . '</div>';
} else {
self::show_error(QUERY_EMPTY);
}
$array = array_values($array);
print_r($array);
$out .= '<form action="' . $_SERVER['PHP_SELF'] . '?id=' . $id . '&table=' . $table . '" method="post" class="form-horizontal" ' . $formAppend . '>';
while ($row = $resultUpdate->fetch_assoc()) {
foreach ($row as $fieldname => $value) {
if (in_array($fieldname, $array)) {
$out .= generateInputField($fieldname, $value);
}
}
foreach ($row as $fieldname => $value) {
if (in_array($fieldname, $array)) {
$out .= generateTextarea($fieldname, $value, $cke);
}
}
foreach ($row as $fieldname => $value) {
if (in_array($fieldname, $array)) {
$out .= generateImgField($fieldname, $value);
}
}
}
$arr = array("last_modified"=>"input", "published"=>"input", "content"=>"textarea");
echo $automate->createArrayForm('projects', 'update', 'Some form desc', '178514825', $arr, true);

现在所有字段都在每个 foreach 中输出当只有 inputs应该输出在 generateInputField例如部分。我知道这是因为我需要检查 fieldtype (input, textarea) 键是否与标记为 input 的值之一匹配。或textarea对于 $fieldname 的值。但我不知道如何。

我很确定我必须过滤数组,因此只有 input 的值进入一个单独的数组,如 arrayInput我可以在 in_array 中用作第二个参数.

最佳答案

如果我正确理解你和你的代码......

这段代码

while ($row = $resultUpdate->fetch_assoc()) {
foreach ($row as $fieldname => $value) {
if (in_array($fieldname, $array)) {

将始终为所有行返回 true,这就是您获得当前输出的原因。

相反,你应该这样做:

while ($row = $resultUpdate->fetch_assoc()) {
foreach ($row as $fieldname => $value) {
if ($fieldname == 'input') {
$out .= generateInputField($fieldname, $value);
} elseif($fieldname == 'textarea') {
$out .= generateTextarea($fieldname, $value, $cke);
} elseif ($fieldname == 'img') {
$out .= generateImgField($fieldname, $value);
}
else{ $out = $out;}
}
}

关于php - 使用数组自动生成更新表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18086868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com