PHP在逗号后解析MYSQL并输出到html表

时间:2014-09-18 03:16:08

标签: php mysql

谢谢大家的帮助!我在17天前收到了一些非常好的帮助,保存了我的 * !我还在学习PHP,遇到了一个新问题。我有一个名为" Tracking"的MYSQL数据库字段。这是一个很长的文本字段,我们要在其中输入以逗号分隔的跟踪号(用于发货)。我们按照相同的顺序运送20-50个单独的箱子。

以下脚本向HTML表格输出正在装运的箱子数量(EX Box 1 of 12,Box 2 of 12 ...等),然后是跟踪号码字段的值。我需要修改它,以便在"逗号"在“跟踪”字段中,包括每个框的跟踪编号。所以方框1:跟踪号码"取第一个跟踪号码并以逗号结束",所以方框2:跟踪号码"取第二个跟踪号码并以逗号结束" ....等等。这有道理吗?

请提供任何可能的帮助,非常感谢!

脚本:

    <?php
$q = intval($_GET['q']);

$con = mysqli_connect('***','***','***','***');
if (!$con) {
die('Could not connect: ' . mysqli_error($con));
}

mysqli_select_db($con,"db116223_wmi");
$sql="SELECT * FROM tbl_purchase_order WHERE purchase_order_id = '".$q."'";
$result = mysqli_query($con,$sql);



while($row = mysqli_fetch_array($result)) {
for ($i=0; $i<$row['product_quantity']; $i++) {
$my_val=1;
$x += 1;

echo "<table>";

echo "<tr>";

echo  "<td width=400><br>Box $x of ". $row['product_quantity'] ." Tracking Number:". $row['Tracking'] ."</td>";

echo "</tr>";
echo "</table>";
}
}
mysqli_close($con);
?>

JB

1 个答案:

答案 0 :(得分:0)

正如jjonesdesign所提到的,你需要使用explode来打破每个逗号的跟踪号字段。 explode创建一个值数组,每个值都从Tracking字段中分离出来。请看下面的解决方案:

<?php
$q = intval($_GET['q']);

$con = mysqli_connect('***','***','***','***');
if (!$con) {
die('Could not connect: ' . mysqli_error($con));
}

mysqli_select_db($con,"db116223_wmi");
$sql="SELECT * FROM tbl_purchase_order WHERE purchase_order_id = '".$q."'";
$result = mysqli_query($con,$sql);



while($row = mysqli_fetch_array($result)) {
$myTracking = explode(',',$row['Tracking']); // get an array of tracking numbers. Array element starts with 0
for ($i=0; $i<$row['product_quantity']; $i++) {
$my_val=1;
$x += 1;


echo "<table>";

echo "<tr>";

echo  "<td width=400><br>Box $x of ". $row['product_quantity'] ." Tracking Number:".  $myTracking[$i] ."</td>";

echo "</tr>";
echo "</table>";
}
}
mysqli_close($con);
?>