【发布时间】:2018-02-24 13:31:00
【问题描述】:
我正在尝试根据来自数据库的输出来显示输入字段。请分享其中的任何想法或逻辑。我有超过 25 个字段。
Page1.php
我在表单中有姓名(文本类型)、电子邮件(电子邮件类型)、性别(无线电)、国家(选择下拉菜单)、地址(文本区域)。用户将单击表单中任何他需要的复选框并单击提交,然后他选择的字段的值将存储在数据库中。
Page2.php
这里我显示的是从 Page1.php 中选择的字段,但我还需要与哪些字段来自数据库相关的输入类型。
例如:在 page1 我选择 Name、Email、Country 并提交表单然后在 page2 我必须显示输出 <input type="text" name="Name">,<input type="text" name="Name">,<select></select>.
我需要知道我必须使用什么逻辑。谁能帮我写剧本?
表单代码
<form action="" method="post">
<input type="checkbox" name="check-fields[]" value="Name">
<label>Name(Text type)</label>
<input type="checkbox" name="check-fields[]" value="Email">
<label>Email(Email type)</label>
<input type="checkbox" name="check-fields[]" value="Gender">
<label>Gender(Radio type)</label>
<input type="checkbox" name="check-fields[]" value="Select">
<label>Country(Drop down)</label>
<input type="checkbox" name="check-fields[]" value="textarea">
<label>Address(Textare)</label>
<input type="submit" name="submit" value="submit">
</form>
将值存储在数据库中
if (isset($_POST['submit'])) {
// prepare and bind
$a=$_POST['check-fields'];
$elements= implode(',',$a);
$sql_elements="INSERT INTO test (elements) VALUES (?)";
$stmt = $conn->prepare($sql_elements);
$stmt->bind_param("s", $elements);
$stmt->execute();
echo "New records created successfully";
$stmt->close();
$conn->close();
}
第 2 页
我正在获取输出,但我该如何设置输入字段?
$sql_fields="SELECT elements FROM test WHERE id=3";
if ($stmt = $conn->prepare($sql_fields)) {
$stmt->execute();
$stmt->bind_result($elements);
while ($stmt->fetch()) {
$arr=explode(",", $elements);
echo "<pre>";
print_r($arr);
echo "</pre>";
}
}
$stmt->close();
$conn->close();
?>
【问题讨论】:
-
有什么想法吗?
标签: javascript php jquery html forms