php - 将 html 表单 cloumn 数组转换为行 php

标签 php html mysql arrays

我有一个 html 表单,它有多个文本区域,它的值来自数据库。

while($row=mysql_fetch_array($record)){
echo "<tr class='item-row'>";
echo "<td>" .$startSrno. "</td>";
echo "<td class='item-name'> <div class='delete-wpr'><textarea name='productName[]'>".$row['name']."</textarea></div></td>";
echo "<td>".$row['pkgsize']."</td>";
echo "<td><textarea class='savings' name='saving[]'>".$row['savings']."</textarea></td>";
echo "<td><textarea class='mrp' name='mrp[]'>".$row['MRP']."</textarea></td>";
echo "<td><textarea class='qty' name='qty[]'>1</textarea></td>";
echo "<td><textarea class='cost' name='saleprice[]'>".$row['saleprice']."</textarea></td>";
echo "<td><textarea class='price' name='total[]'>".$row['saleprice'] * '1'."</textarea></td>";
echo '<input type="hidden" name="productId[]" value="'.$row['id']. '">';
echo '<input type="hidden" name="pkgsize[]" value="'.$row['pkgsize']. '">';
echo "</tr>";
$startSrno++;

}

现在,当我提交此表单时,我得到了这些具有多个值的表单数组,但它们是列格式,而我需要的是行格式:

通过这样做(使用内爆函数 ())我得到以下输出:

$id = implode(',',$_POST['productId']);<br/>
$name = implode(',',$_POST['productName']);
$saving = implode(',',$_POST['saving']);
$qty = implode(',',$_POST['qty']);
$pkgsize = implode(',',$_POST['pkgsize']);
$mrp = implode(',',$_POST['mrp']);
$saleprice = implode(',',$_POST['saleprice']);
$total = implode(',',$_POST['total']);

使用 echo 的当前输出,例如echo $name == (Boost,Olay):

Boost,Olay,Bournvita (Name)
45,35,20 (Savings)
2,3,5 (qty)
500gm,20ml,1kg(pkgsize)
120,70,320(mrp)
75,35,300(saleprice)
150,105,1500(total)

但我希望以下面规定的(行)格式输出以直接在插入查询中使用:

(Boost,45,2,500gm,120,75,150),(Olay,35,3,20ml,120,35,105),(Bournvita,20,5,1kg,300,75,1500)

提前致谢

最佳答案

听起来您需要一个 for 循环。前提是您已经验证了该数据并确保没有传入空“单元格”。

$products = '(' . $name[0] .  ',' . $saving[0] . ',' . $qty[0] . ',' . $pkgsize[0] . ',' . $mrp[0] . ',' . $saleprice[0] . ',' . $total[0] . ')';

for($i = 1; $i < count($id); $i++)
    $products = ',(' . $name[i] .  ',' . $saving[i] . ',' . $qty[i] . ',' . $pkgsize[i] . ',' . $mrp[i] . ',' . $saleprice[i] . ',' . $total[i] . ')';

我的 PHP 技能可能不是最新的,它可能会做得更好,但我认为这应该有效。

关于php - 将 html 表单 cloumn 数组转换为行 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35079106/

相关文章:

php - 是否可以(虚拟地)将站点从 www.example.org/移动到 www.example.org/new/htaccess?

javascript - OpenLayers 将坐标调整为 0,0

MySQL第二个基于外键的自增字段

php - 使用 setinterval 和 mysql 数据库进行复选框状态 Ajax 刷新

php - 使用单词数组搜索 MySQL 文本列并根据匹配数量排序

php - 如何有效实现新闻通讯系统以防止重复发送电子邮件?

html - 如何让背景图像显示在:after selector?中

html - 屏幕上的分页符(css 多列布局)

javascript - Node server.js - 无法获取/

MySQL 触发器和存储过程复制