Php 插入数组值+;将单个表单值转换为所有行
我试图将表单中的值插入mysql数据库。我有单值表单+表单中的数组值。如何将数组值插入数据库,并将单个表单值附加到所有行 HTML:Php 插入数组值+;将单个表单值转换为所有行,php,mysql,Php,Mysql,我试图将表单中的值插入mysql数据库。我有单值表单+表单中的数组值。如何将数组值插入数据库,并将单个表单值附加到所有行 HTML: Start:<br> <input type="text" name="start" id="start"> End:<br> <input type="text" name="end" id="end"> <input type="text" name="item[]" placehold
Start:<br>
<input type="text" name="start" id="start">
End:<br>
<input type="text" name="end" id="end">
<input type="text" name="item[]" placeholder="Manufacturer #" /><br>
<input type="text" name="description[]" placeholder="Description" /><br>
<input type="text" name="item[]" placeholder="Manufacturer #" /><br>
<input type="text" name="description[]" placeholder="Description" /><br>
<input type="text" name="item[]" placeholder="Manufacturer #" /><br>
<input type="text" name="description[]" placeholder="Description" /><br>
我将把代码改成mysqli/pdo,我知道当前的代码是不安全的
感谢您的帮助,谢谢 只需使用
$\u POST['start']
和$\u POST['end']
而无需阵列访问,因为它们每次都是相同的。您可以对项目和描述使用数组访问。好的,它起作用了。不管出于什么原因,它在早些时候不起作用……一定是我以前的代码中的一个错误。谢谢大家!@hek2mgl而不是$\u POST['start'][$i]
只需使用$\u POST['start']
if (isset($_POST['submit']))
{
$link = mysql_connect('localhost', 'user', 'pass');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("mydb") or die(mysql_error());
echo 'Connected successfully';
$query = "INSERT INTO agreement (start, end, item_number, item_description) VALUES ";
foreach($_POST['item'] as $i => $item)
{
// Get values from post.
$item = mysql_real_escape_string($item);
$description = mysql_real_escape_string($_POST['description'][$i]);
$start = mysql_real_escape_string($_POST['start'][$i]);
$end = mysql_real_escape_string($_POST['end'][$i]);
// Add to database
$query = $query." ('$start','$end','$item','$description') ,";
}
$query = substr($query,0,-1); //remove last char
$result = mysql_query($query);
}