php 从 for 循环中生成备用编号的代码
php code to generate alternate no from for loop
我正在生成书籍、收据、优惠券和价格。
我用for循环生成了所有系列。
每个 forloop 从文本框中获取自定义代码和总值以生成所有数据。
现在我的要求是如何在每张优惠券中生成价格。
for ex- 在下面 table ,每个 receiptcode 都有 2 个唯一的 couponcode.Ok,
收到优惠券代码
701 = 501,502
702 = 503,504
703 = 505,506 好的。
现在我还需要在每张优惠券中插入备用价格,如下例所示
前 -
优惠券价格
501 -- 1
502 -- 2
503 -- 1
504 -- 2
505 -- 1
506 -- 2
下面是我使用 forlloop 生成所有数据的代码。
请告诉我如何使用每个优惠券代码生成替代价格。
<?php
if(isset($_POST['save']))
{
$city = $_POST['city'];
$scheme_name = $_POST['scheme_name'];
$amount = $_POST['amount'];
$bookcode = $_POST['bookcode'];
$book_no2 = $_POST['book_no2'];
$receiptcode = $_POST['receiptcode'];
$receipt_no = $_POST['receipt_no'];
$couponcode = $_POST['couponcode'];
$coupon = $_POST['coupon'];
$created = date("Y-m-d H:i:s");
$Temp_receipt = $receiptcode + $receipt_no;
$Temp_coupon = $couponcode + $coupon;
for($row1=$bookcode+1;$row1<=$bookcode+$book_no2;$row1++)
{
for($row=$receiptcode+1;$row<=$Temp_receipt;$row++)
{
$query = $database->getRow("SELECT MAX(receipt_no) AS max1 FROM scheme_master;");
if($query['max1']=='')
{
$largestNumber = $receiptcode;
$top = $largestNumber + 1;
}
else
{
$largestNumber = $query['max1'];
$top = $largestNumber + 1;
}
for($row2=$couponcode+1;$row2<=$Temp_coupon;$row2++)
{
$query = $database->getRow("SELECT MAX(coupon) AS max2 FROM scheme_master;");
if($query['max2']=='')
{
$largestcoupon = $couponcode;
$coup = $largestcoupon + 1;
}
else
{
$largestcoupon = $query['max2'];
$coup = $largestcoupon + 1;
}
$insertrow = $database->insertRow("INSERT INTO scheme_master (price,amount,scheme_name,city,book_no2,receipt_no,coupon,created)
VALUES (:price,:amount,:scheme_name,:city,:book_no2,:receipt_no,:coupon,:created)",
array(':price'=>$pric,':amount'=>$amount,':scheme_name'=>$scheme_name,':city'=>$city,':receipt_no'=>$top,':book_no2'=>$row1,':coupon'=>$coup,':created'=>$created));
}
}
}
$_SESSION['message'] = "Books Created Successfully";
}
?>
如果我没理解错的话,您想在 for 循环的每次迭代中交替使用 1 和 2 吗?可以这样实现:
首先初始化$loopCount = 0
然后,在循环中,您执行如下操作:
if($loopCount++ % 2 == 0) {
echo "1";
} else {
echo "2";
}
选择:
echo $loopCount++ % 2 + 1;
它会检查$loopCount
是均匀的还是不均匀的,并相应地生成输出。
这就是它的工作原理。将其集成到您的代码中取决于您。
我正在生成书籍、收据、优惠券和价格。
我用for循环生成了所有系列。
每个 forloop 从文本框中获取自定义代码和总值以生成所有数据。
现在我的要求是如何在每张优惠券中生成价格。
for ex- 在下面 table ,每个 receiptcode 都有 2 个唯一的 couponcode.Ok,
收到优惠券代码
701 = 501,502
702 = 503,504
703 = 505,506 好的。
现在我还需要在每张优惠券中插入备用价格,如下例所示
前 -
优惠券价格
501 -- 1
502 -- 2
503 -- 1
504 -- 2
505 -- 1
506 -- 2
下面是我使用 forlloop 生成所有数据的代码。
请告诉我如何使用每个优惠券代码生成替代价格。
<?php
if(isset($_POST['save']))
{
$city = $_POST['city'];
$scheme_name = $_POST['scheme_name'];
$amount = $_POST['amount'];
$bookcode = $_POST['bookcode'];
$book_no2 = $_POST['book_no2'];
$receiptcode = $_POST['receiptcode'];
$receipt_no = $_POST['receipt_no'];
$couponcode = $_POST['couponcode'];
$coupon = $_POST['coupon'];
$created = date("Y-m-d H:i:s");
$Temp_receipt = $receiptcode + $receipt_no;
$Temp_coupon = $couponcode + $coupon;
for($row1=$bookcode+1;$row1<=$bookcode+$book_no2;$row1++)
{
for($row=$receiptcode+1;$row<=$Temp_receipt;$row++)
{
$query = $database->getRow("SELECT MAX(receipt_no) AS max1 FROM scheme_master;");
if($query['max1']=='')
{
$largestNumber = $receiptcode;
$top = $largestNumber + 1;
}
else
{
$largestNumber = $query['max1'];
$top = $largestNumber + 1;
}
for($row2=$couponcode+1;$row2<=$Temp_coupon;$row2++)
{
$query = $database->getRow("SELECT MAX(coupon) AS max2 FROM scheme_master;");
if($query['max2']=='')
{
$largestcoupon = $couponcode;
$coup = $largestcoupon + 1;
}
else
{
$largestcoupon = $query['max2'];
$coup = $largestcoupon + 1;
}
$insertrow = $database->insertRow("INSERT INTO scheme_master (price,amount,scheme_name,city,book_no2,receipt_no,coupon,created)
VALUES (:price,:amount,:scheme_name,:city,:book_no2,:receipt_no,:coupon,:created)",
array(':price'=>$pric,':amount'=>$amount,':scheme_name'=>$scheme_name,':city'=>$city,':receipt_no'=>$top,':book_no2'=>$row1,':coupon'=>$coup,':created'=>$created));
}
}
}
$_SESSION['message'] = "Books Created Successfully";
}
?>
如果我没理解错的话,您想在 for 循环的每次迭代中交替使用 1 和 2 吗?可以这样实现:
首先初始化$loopCount = 0
然后,在循环中,您执行如下操作:
if($loopCount++ % 2 == 0) {
echo "1";
} else {
echo "2";
}
选择:
echo $loopCount++ % 2 + 1;
它会检查$loopCount
是均匀的还是不均匀的,并相应地生成输出。
这就是它的工作原理。将其集成到您的代码中取决于您。