为什么我的数组只返回循环中的最后一个值?

发布于 2024-12-12 01:19:48 字数 566 浏览 0 评论 0原文

我有以下代码,旨在循环浏览表单上提交的名称:

$row_count = count($_POST['name']);
if ($row_count > 0) {

  mysql_select_db($database, $connection);
  $name = array();
  $workshop = array();

  for($i = 0; $i < $row_count; $i++) {
    // variable sanitation...
    $name[i] = mysql_real_escape_string(ucwords($_POST['name'][$i]));
    $workshop[i] = mysql_real_escape_string($_POST['workshop'][$i]);
    }
  $names = "('".implode("','",$name)."')";
.....etc

出于某种原因 $names 仅返回表单上提交的姓氏,而不是所有名称。有人可以帮助我让它正常工作吗?

谢谢,

尼克

I have the following code which is meant to cycle through names submitted on a form:

$row_count = count($_POST['name']);
if ($row_count > 0) {

  mysql_select_db($database, $connection);
  $name = array();
  $workshop = array();

  for($i = 0; $i < $row_count; $i++) {
    // variable sanitation...
    $name[i] = mysql_real_escape_string(ucwords($_POST['name'][$i]));
    $workshop[i] = mysql_real_escape_string($_POST['workshop'][$i]);
    }
  $names = "('".implode("','",$name)."')";
.....etc

For some reason $names is only returning the last name submitted on the form, rather than all of the names. Could someone help me get this working correctly?

Thanks,

Nick

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

猥琐帝 2024-12-19 01:19:48

问题就在这里

$name[i] = 
$workshop[i] = 

解决方案:

$name[$i] = 
$workshop[$i] = 

现在您的代码以这种方式工作:

$name["i"] = 
$workshop["i"] = 

因此您在 $name$workshop 数组中只有一个元素。 (循环中的最后一个)

problem is here

$name[i] = 
$workshop[i] = 

solution:

$name[$i] = 
$workshop[$i] = 

now your code is working in this way:

$name["i"] = 
$workshop["i"] = 

so you have only one element in $name, $workshop arrays. (last from loop)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文