簡體   English   中英

php mysql插入數據,但它處於while循環中

[英]php mysql insert the data, but it was in a while loop

我有此數據,並使用mysql select調用它,然后在行提取數組時

這是我的數據庫圖像 在此處輸入圖片說明

在該數據庫的頂部有一個保存按鈕,因此當我保存數據時,它僅保存第一行,而不保存第二行。

這是我的insert code有點長的數據

// COUNTER
$cou = $_POST['cou'];

// USER DETAILS
$user_code = $_POST['user_code'];
$com_code = $_POST['ccode'];    
$com_for_track = $_POST['atrack'];
$template_code = $_POST['template_code'];

$logo_position = $_POST['logo_position'];
$logo_width = $_POST['logo_width'];

$add_position = $_POST['add_position'];
$font_size = $_POST['font_size'];
$font_family = $_POST['font_family'];

// FOR COMPANY NAME
$com_name = $_POST['com_name'];
$address = $_POST['address'];
$post_code = $_POST['post_code'];
$city = $_POST['city'];
$country = $_POST['country'];
$email = $_POST['email'];
$kvk_no = $_POST['kvk_no'];
$vat_no = $_POST['vat_no'];
$bank_acct = $_POST['bank_acct'];
$bank_acct_iban = $_POST['bank_acct_iban'];

// CLIENT NAME
$com_name_for = $_POST['com_name_for'];
$sub_quo = $_POST['sub_quo'];
$street_name_for = $_POST['street_name_for'];
$post_code_for = $_POST['post_code_for'];
$city_for = $_POST['city_for'];
$country_for = $_POST['country_for'];

$todays = date( 'Y-m-d', strtotime( $_POST['todays'] ) );
$ex_date = date( 'Y-m-d', strtotime( $_POST['ex_date'] ) );

$fact_year = $_POST['fact_year'];
$inv_num = $_POST['inv_num'];

// COMPUTATION
$quan = $_POST['quan'];
$defi = $_POST['defi'];
$amti = $_POST['amti'];
$tota = $_POST['tota'];
$btwi = $_POST['btwi'];

// SUBTOTAL
$total_f = $_POST['total_f'];
$s_btw = $_POST['s_btw'];
$t_com = $_POST['t_com'];

// FOOTER 
$ft = $_POST['ft'];

$i = 1;
while ( $i <= $cou ) {
JON_SQL( "INSERT INTO jon_tem VALUE( ''
,'$user_code'
,'$com_code'
,'$com_for_track'
,'$template_code'
,'$logo_position'
,'$logo_width'
,'$add_position'
,'$font_size'
,'$font_family'
,'$com_name'
,'$address'
,'$post_code'
,'$city'
,'$country'
,'$email'
,'$kvk_no'
,'$vat_no'
,'$bank_acct'
,'$bank_acct_iban'
,'$com_name_for'
,'$sub_quo'
,'$street_name_for'
,'$post_code_for'
,'$city_for'
,'$country_for'
,'$todays'
,'$ex_date'
,'$fact_year'
,'$inv_num'
,'$quan'
,'$defi'
,'$amti'
,'$tota'
,'$btwi'
,'$total_f'
,'$s_btw'
,'$t_com'
,NOW() )" );

$i++;
}

echo '<div id="success">New template has been saved! <a href="index.php?c=cprof">Quotation Settings</a></div>';

如果您看到我放在while there但它不起作用,是的,它的工作原理是,它循環了3次或bla bla,但再次它僅保存了第一行數據。

我該如何解決? :(

您在發送單個元素的區域中,必須發送數據數組以保存數據數組。

我最終解決了它。

這是更新的代碼。

$i = 1;
while ( $i <= $cou ) {

// COMPUTATION
$quan = $_POST['quan_'.$i];
$defi = $_POST['defi_'.$i];
$amti = $_POST['amti_'.$i];
$tota = $_POST['tota_'.$i];
$btwi = $_POST['btwi_'.$i];

JON_SQL( "INSERT INTO jon_tem VALUE( ''
,'$user_code'
,'$com_code'
,'$com_for_track'
,'$template_code'
,'$logo_position'
,'$logo_width'
,'$add_position'
,'$font_size'
,'$font_family'
,'$com_name'
,'$address'
,'$post_code'
,'$city'
,'$country'
,'$email'
,'$kvk_no'
,'$vat_no'
,'$bank_acct'
,'$bank_acct_iban'
,'$com_name_for'
,'$sub_quo'
,'$street_name_for'
,'$post_code_for'
,'$city_for'
,'$country_for'
,'$todays'
,'$ex_date'
,'$fact_year'
,'$inv_num'
,'$quan'
,'$defi'
,'$amti'
,'$tota'
,'$btwi'
,'$total_f'
,'$s_btw'
,'$t_com'
,NOW() )" );

$i++;
}

和html代碼

$i = 1;
while( $row = mysql_fetch_array( $sqlview ) ) {
?>
    <tr>
        <td><?=$row['category'];?></td>
        <td>
            <input type="hidden" name="atrack" value="<?=$row['com_track'];?>" />
            <input type="hidden" name="quan_<?=$i;?>" value="<?=$row['quo_quantity'];?>" />
            <input type="hidden" name="defi_<?=$i;?>" value="<?=$row['quo_definition'];?>" />
            <input type="hidden" name="amti_<?=$i;?>" value="<?=$row['quo_amt'];?>" />
            <input type="hidden" name="tota_<?=$i;?>" value="<?=$row['quo_total'];?>" />
            <input type="hidden" name="btwi_<?=$i;?>" value="<?=$row['quo_btw'];?>" />
            <?=$row['quo_quantity'];?> x
        </td>
        <td width="200">
            <?=$row['quo_definition'];?>
        </td>
        <td>
            <?=$msg_tot;?> <?=$row['quo_amt'];?>
        </td>
        <td id="total">
            <input type="hidden" name="sumof" value="<?=$row['quo_total'];?>" />
            <?=$msg_tot;?> <?=$row['quo_total'];?>
        </td>
        <td>
            <?=$row['quo_btw'];?>
        </td>
    </tr>
 <?
 $i++;
}

謝謝你們的主意。 非常感謝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM