我一直在尝试使用textarea向mysql添加多行。问题是,我可以从文本框中获取所有行,但是我想用"|"作为分隔符将它们分隔成值。
$invalid = 0;
$inserted = 0;
$totalaccounts = 0;
$lista = $db->real_escape_string($_POST['textarea']);
$price = $db->real_escape_string($_POST['price']);
$lines = explode("'n", $lista);
while($lines){
foreach($lines as $line) {
$lines1 = explode(" | ", $line);
foreach($lines1 as $line1) {
$line1 = $db->real_escape_string($line1);
if($line1 == ""){
$line1 = "NONE";
}
unset($line1);
}
// SQL CHECK IF DUPLICATED $lines1[0] $lin....
$numrowz = mysqli_num_rows($sqlz);
if($numrowz >= 1) {
echo 'DUPLICATED: ' . $line1 . '<br />';
$invalid++;
}else{
// SQL INSERT CODE
$inserted++;
}
}
}
echo 'Total Accounts: ' . $inserted . '<br />';
echo 'Total Duplicated/Expired: ' . $invalid . '<br />';
echo 'Total Inserted: ' . $inserted . '<br /><br />';
echo '<html><body><a href="continue.html">CLICK HERE TO CONTINUE</body></html>';
}
这是我使用的代码,但我只想添加一个,就可以获得无限的重复输入。需要帮助:(
您有一个无限循环。只要$lines
的计算结果为true,while($lines)
就会继续运行,而且我在代码中没有看到控制变量($lines)未设置或设置为false的地方。
我也没有看到任何地方会从这样的while循环中受益,因为您已经在$lines
数组中循环了。看起来你是想做一个有条件的,比如if ($lines) {
。