找不到合适的解决方案..寻求帮助,使php按照我提供的格式插入一定数量的行,即7。
<form method="post" action="">
<input name="number" type="text" value="">
<br />
<input type="submit" name="insert" value="Go">
</form>
所以在这种形式中我想输入数值并且一旦提交我想重复插入确切的次数,因为我已经在表格中设置(在这种情况下为7次)
INSERT INTO table (value1, value2) VALUES ('Created', '".date("H:i:s")."')
解决方案应该是什么?
答案 0 :(得分:1)
试试这个
<?php
$number=$_POST['number'];
if($number != "" && $number != '0'){
while(1 <= $number)
{
//inser code..INSERT INTO table (value1, value2) VALUES ('Created', '".date("H:i:s")."')
$number--;
}
}
答案 1 :(得分:0)
将循环中的插入查询从1运行到数字
<?php
if(isset($_POST['number']) && is_numeric($_POST['number']) && $_POST['number']!='' && $_POST['number']>0)
{
for($i=1;$i<=$_POST['number'];$i++)
{
// your insert query here..
}
}
?>
答案 2 :(得分:0)
由于您已在表单上声明方法为“post”,因此您可以获取提交的数字的$ _POST信息,将其存储到变量中,然后循环重复操作所指定的次数在那个变量中。
<?php
$AmountToInsert = $_POST['number'];
if($AmountToInsert > 0)
{
for($index=1; $index<=$AmountToInsert; $index++)
{
// Execute your query/code here
}
}
?>
答案 3 :(得分:0)
在PHP中你可以这样做:
$number = (number)$_GET['number'] ?: 1;
$value = "('Created', '" . date("H:i:s") . "')";
// Creating multiple inputs like: (valueA1, valueA2), (valueB1, valueB2), ...
$values = implode(',', array_fill(0, $number, $value));
$query = 'INSERT INTO table (value1, value2) VALUES ' . $values;
// Run query etc...
使用此方法,您只需查询一次数据库,这将更快,更具可扩展性。