3

我需要从 HTML 表单中的 textarea 中获取所有元素,然后使用 PHP 将它们插入 MySQL 数据库。我设法将它们放入一个数组中,并且还找到了数组中元素的数量。但是,当我尝试在 while 循环中执行它时,它会在页面中继续显示单词“执行”(循环内)超过 1000 次。

我不知道会是什么问题,因为 while 循环是此实例唯一适用的循环

$sent = $_REQUEST['EmpEmergencyNumbers'];
$data_array = explode("\n", $sent);
print_r($data_array);
$array_length = count($data_array);
echo $array_length;
while(count($data_array)){
echo "execution    ";  // This would be replaced by the SQL insert statement
}
4

3 回答 3

2
you should use 
foreach($data_array as $array)
{
   //sql
}
于 2012-07-29T05:30:15.570 回答
1

当您在 php 中访问提交的数据时,它将在 $_GET 或 $_POST 数组中可用,具体取决于您提交它的方法(GET/POST)。避免使用 $_REQUEST 数组。而是使用 $_GET / $_POST (取决于使用的方法)。

要遍历数组中的每个元素,可以使用 foreach 循环。

例子:

//...
foreach($data_array as $d)
{
  // now $d will contain the array element
  echo $d; // use $d to insert it into the db or do something
}
于 2012-07-29T05:38:22.587 回答
0

对数组使用 foreach 或减少计数,如果计数大于 0,则您的 while 循环是无限循环

于 2012-07-29T05:31:44.727 回答