希望我的问题对帖子是正确的。
<form action="process.php?id=<?php echo intval($order['id']);?>" method="post">
<ul>
<?php
$sd = 'SELECT * FROM download WHERE pid IN ('.$order['pid'].') ORDER BY pid ASC'; // pid IN (3,4,5)
$qd = $db->rq($sd);
$no = 1; while($download = $db->fetch($qd)) {
?>
<li>
<?php echo $no; ?> <?php echo $download['title']; ?>
<input type="hidden" name="mid[]" value="<?php echo $order['mid']; ?>" />
<input type="hidden" name="pid[]" value="<?php echo $download['pid']; ?>" />
</li>
<?php $no++; } ?>
</ul>
<input type="submit" name="submit" value="Submit" />
</form>
输出
- 索尼爱立信驱动程序
- 索尼爱立信应用程序
- 三星驱动程序
- 摩托罗拉驱动程序
问题
- 如何在
process.php
上将数据Output
存储(保存)到下面的表结构中 数据会像这样保存。
id | mid | pid | title ----------------------------------------- 1 | 1 | 3 | Sony Erricson Drivers ----------------------------------------- 2 | 1 | 3 | Sony Erricson Apps ----------------------------------------- 3 | 1 | 4 | Samsung Drivers ----------------------------------------- 4 | 1 | 5 | Motorola Drivers -----------------------------------------
process.php
if (isset($_POST['submit']) && !empty($_POST['submit'])) {
// I'm blur how to get dynamic mid[] & pid[] here
}
最佳答案
为标题创建第三个隐藏字段,例如:
<input type="hidden" name="title[]" value="<?php echo $download['title']; ?>" />
<input type="hidden" name="mid[]" value="<?php echo $order['mid']; ?>" />
<input type="hidden" name="pid[]" value="<?php echo $download['pid']; ?>" />
现在你可以像这样存储它,假设你的页面被提交到 process.php
,这就是你应该放在那里的内容:
if (isset($_POST['submit']))
{
for($i = 0; $i<=count($_POST['title']); $i++)
{
$title = mysql_real_escape_string($_POST['title'][$i]);
$mid = intval($_POST['mid'][$i]);
$pid = intval($_POST['pid'][$i]);
// database code
$query = "insert into table set title = '$title', mid = $mid, pid = $pid";
// mysql_query and/or more code....
}
}
关于php - 如何将数据存储到MySQL用于数组输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3079576/