我有这段代码,它允许我从复选框中检索数据,但还没有包含任何mysql,所以你能帮我修改一下吗?
表单如下所示:
<form action="checkbox.php" method="post">
<input type="checkbox" name="checkbox[]" value="hostess_name">
<input type="checkbox" name="checkbox[]" value="hostess_familyname_en">
<input type="checkbox" name="checkbox[]" value="hostess_id">
<input type="checkbox" name="checkbox[]" value="hostess_firstname_en">
<br>
<br>
<input type="submit" name="Submit" value="Submit">
</form>我插入的值应该是数据库字段,然后我有这个checkbox.php文件,它读取选定的值。
<?php
mysql_connect("localhost", "root", "") or die(mysql_error());
echo "Connected to MySQL<br />";
?>
<?
/* and in your checkbox.php you do this: */
if(isset($_POST['Submit']))
{
echo "<pre>"; print_r($_POST);
}
$checked = mysql_real_escape_string(implode(',', $_POST['checkbox']));
echo $checked;
?>如何赋值给复选框值数据库字段?我想要做的是存储这些值,并使用implode将它们导出到一个查询中。帮帮我..。
发布于 2012-06-19 03:32:33
您的POST变量($_POST‘’checkbox‘)实际上已经是一个数组。首先,要弄清楚您实际使用的是什么,请执行以下操作:
echo '<pre>';
print_r ($_POST['checkbox']);
echo '</pre>';然后查看您的脚本并查看输出。您可能会看到一个包含一些键和值的数组。使用它,您可以决定如何继续。
如果是我,我会做一些类似以下的事情来完成你的任务:
$sql = "SELECT `table_id_column`, `another_column` ";
foreach ($_POST['checkbox'] as $key => $value) {
$sql .= ", `$value`";
}
$sql .= " FROM `hostess` ORDER BY `another_colmn` ASC";请记住,允许以这种方式修改SQL语句是非常糟糕的做法。在将其放入生产环境之前,您需要在其中引入一些安全性。
卢克
发布于 2012-06-19 03:12:41
使用
foreach($_POST[checkbox] as $key => $value {
echo PHP_EOL . "Key is => " . $key . " Value is => " . $value . PHP_EOL;
}尝试一下并查看输出,您将看到如何进一步操作。
https://stackoverflow.com/questions/11089371
复制相似问题