2016-08-05 20 views
1

爲什麼只有表單中的底部表被處理到下一頁?如果他們輸入來自多個樣式(多個表格)的數量,我希望在下一頁的單獨表格(行)中呈現信息。我試圖做的一個示例是:http://taketwodesigns.com/monkeypod/order/BACKUPS/items/ladies/index.php在表單中處理多個表併發布到下一頁 - 沒有MySQL

如果我在前兩個表格中輸入Qty,則不會在下一頁顯示數據。 如果我在底部表格信息中輸入Qty,則呈現很好! 我需要給每個提交按鈕命名嗎?也許添加一個if(isset()?

我試圖創建一個服裝訂單,而不需要全面的購物車!不需要付款(最終希望能夠通過電子郵件發送PDF呈現的頁面) 謝謝!

<?php 
date_default_timezone_set('Pacific/Honolulu'); 
$date = date("l, F jS Y g:i:s A"); 

$itemName = $_POST['submitIt']; 
$itemStyle = $_POST['itemStyle']; 
$mistake = '<p class="mistakes">If you have entered the wrong quantities,  simply go<a href="javascript:history.back();"> BACK</a> and re-enter them. </p>'; 

$xs = $_POST['xs']; 
$sm = $_POST['sm']; 
$md = $_POST['md']; 
$lg = $_POST['lg']; 
$xl = $_POST['xl']; 
$xxl = $_POST['xxl']; 

if ($_POST['xs'] || 
    $_POST['sm'] || 
    $_POST['md'] || 
    $_POST['lg'] || 
    $_POST['xl'] || 
    $_POST['xxl'] && 
    $_POST['submitIt'] &&   
    $_POST['itemStyle']) { 

for ($i = 0; $i < count($_POST['submitIt']); $i++) { 

    $xs = ltrim($_POST['xs'][$i], '0'); 
    $sm = ltrim($_POST['sm'][$i], '0'); 
    $md = ltrim($_POST['md'][$i], '0'); 
    $lg = ltrim($_POST['lg'][$i], '0'); 
    $xl = ltrim($_POST['xl'][$i], '0'); 
    $xxl = ltrim($_POST['xxl'][$i], '0'); 

    include '../../BACKUPS/templates/process_table_template.php';      
    } 
}else { 
    echo '<h2>Oppsiedasies! It looks like you didn\'t order anything! <br>Back to <a href="..">shop home</a></h2>'; 
} 
?> 

風格和服裝的尺寸是在一個單一的形式元素的多個表。像下面。(只是假設有多種樣式,有些沒有XS,XL或XXL尺寸)

<form action="/monkeypod/order/BACKUPS/processors/process_xs-xxl.php" class="margins" name="ladies" method="post"> 
<span class="item_kind">↓ Ladies Items ↓</span> 

<!---------- 1st STYLE BELOW -----------> 
<div class="itemz"> 

<div class="item_image_container"> 
<span class="item_name">Item ~ MLTA107-101TEV</span> 
<a href="/monkeypod/order/BACKUPS/images/styles/large/mlta107_101tev_big.jpg" target="_blank"> 
<img class="item_image" src="/monkeypod/order/BACKUPS/images/styles/thumbs/mlta107_101tev_thumb.png" /></a> 
<span class="click_full_image">Click image for full size</span> 
</div><!-- ITEM_IMAGE_CONTAINER div CLOSE --> 

<table id="styles" border="1" cellspacing="1"> 
<tr class="gridaddrows"> 
<td colspan=8 class="radius"> 
<div class="formtext">Enter quantities and click the revolving can to submit</div> 
</td> 
</tr> 

<tr class="gridrows"> 
<td class="gridtitle">Size ►</td> 
<td class="gridtitle">XS</td> 
<td class="gridtitle">SM</td> 
<td class="gridtitle">MD</td> 
<td class="gridtitle">LG</td> 
<td class="gridtitle"></td> 
<td class="gridtitle"></td> 
</tr> 

<td class="add_to_cart_btn"> 
<input type="image" src="/monkeypod/order/BACKUPS/images/clicktoadd83pxfast.gif" alt="Add to Cart"></td> 
<input type="hidden" name="itemName" value="MLTA107-101TEV"> 

<td><span class="price">$11.25</span><br> 
<input type="number" name="xs" placeholder="Qty" min="0" max="288" autocomplete="off"></td> 

<td><span class="price">$11.25</span><br> 
<input type="number" name="sm" placeholder="Qty" min="0" max="288" autocomplete="off"></td> 

<td><span class="price">$11.25</span><br> 
<input type="number" name="md" placeholder="Qty" min="0" max="288" autocomplete="off"></td> 

<td><span class="price">$11.25</span><br> 
<input type="number" name="lg" placeholder="Qty" min="0" max="288" autocomplete="off"></td> 

<td><!-- span class="price">$11.25</span><br --> 
<input type="number" name="xl" placeholder="Qty" min="0" max="288" style="visibility: hidden;" autocomplete="off"></td> 

<td><!-- span class="price">$11.25</span><br --> 
<input type="number" name="xxl" placeholder="Qty" min="0" max="288" style="visibility: hidden;" autocomplete="off"></td> 

</table> 
</div><!-- ITEMZ div CLOSE --> 

<!------ 2nd STYLE BELOW ----------------> 

回答

0

我期望第二種風格看起來完全符合s ame作爲第一個。如果你想讓多個項目具有完全相同的結構,你應該使用數組。您可以通過添加支架安裝到您輸入的名字做:

<form action="/monkeypod/order/BACKUPS/processors/process_xs-xxl.php" class="margins" name="ladies" method="post"> 
<span class="item_kind">↓ Ladies Items ↓</span> 

<!---------- 1st STYLE BELOW -----------> 
<div class="itemz"> 

<div class="item_image_container"> 
<span class="item_name">Item ~ MLTA107-101TEV</span> 
<a href="/monkeypod/order/BACKUPS/images/styles/large/mlta107_101tev_big.jpg" target="_blank"> 
<img class="item_image" src="/monkeypod/order/BACKUPS/images/styles/thumbs/mlta107_101tev_thumb.png" /></a> 
<span class="click_full_image">Click image for full size</span> 
</div><!-- ITEM_IMAGE_CONTAINER div CLOSE --> 

<table id="styles" border="1" cellspacing="1"> 
<tr class="gridaddrows"> 
<td colspan=8 class="radius"> 
<div class="formtext">Enter quantities and click the revolving can to submit</div> 
</td> 
</tr> 

<tr class="gridrows"> 
<td class="gridtitle">Size ►</td> 
<td class="gridtitle">XS</td> 
<td class="gridtitle">SM</td> 
<td class="gridtitle">MD</td> 
<td class="gridtitle">LG</td> 
<td class="gridtitle"></td> 
<td class="gridtitle"></td> 
</tr> 

<td class="add_to_cart_btn"> 
<input type="image" src="/monkeypod/order/BACKUPS/images/clicktoadd83pxfast.gif" alt="Add to Cart"></td> 
<input type="hidden" name="itemName[]" value="MLTA107-101TEV"> 

<td><span class="price">$11.25</span><br> 
<input type="number" name="xs[]" placeholder="Qty" min="0" max="288" autocomplete="off"></td> 

<td><span class="price">$11.25</span><br> 
<input type="number" name="sm[]" placeholder="Qty" min="0" max="288" autocomplete="off"></td> 

<td><span class="price">$11.25</span><br> 
<input type="number" name="md[]" placeholder="Qty" min="0" max="288" autocomplete="off"></td> 

<td><span class="price">$11.25</span><br> 
<input type="number" name="lg[]" placeholder="Qty" min="0" max="288" autocomplete="off"></td> 

<td><!-- span class="price">$11.25</span><br --> 
<input type="number" name="xl[]" placeholder="Qty" min="0" max="288" style="visibility: hidden;" autocomplete="off"></td> 

<td><!-- span class="price">$11.25</span><br --> 
<input type="number" name="xxl[]" placeholder="Qty" min="0" max="288" style="visibility: hidden;" autocomplete="off"></td> 

</table> 
</div><!-- ITEMZ div CLOSE --> 

<!------ 2nd STYLE BELOW ----------------> 

你的$ _ POST變量將是這樣的,如果你有2款(虛擬爲例):

<?php 
    var_dump($_POST['xs']); 
    /* 
     array(2) => (
      [0](string) => '1', 
      [1](string) => '1' 
     ) 
    */ 
?> 

在PHP文件,該文件處理形式輸入,通過$ _POST數組循環。 這可能看起來像這樣的事情(我只是改變了你的代碼的相關部分能夠處理陣列,它只是顯示它如何做,未測試):

<?php 
    date_default_timezone_set('Pacific/Honolulu'); 
    {...} 
    if (((is_array($_POST['xs']) && !empty($_POST['xs'])) || 
     (is_array($_POST['sm']) && !empty($_POST['sm'])) || 
     (is_array($_POST['md']) && !empty($_POST['md'])) || 
     (is_array($_POST['lg']) && !empty($_POST['lg'])) || 
     (is_array($_POST['xl']) && !empty($_POST['xl'])) || 
     (is_array($_POST['xxl']) && !empty($_POST['xxl']))) && 
     (is_array($_POST['itemName']) && !empty($_POST['itemName'])) 
    ) { 
     for ($i = 0; $i < count($_POST['itemName']); $i++) { 
      $xs = ltrim($_POST['xs'][$i], '0'); 
      {...} 
     } 
    } else { 
     echo '<h2>Oppsiedasies! It looks like you didn\'t order anything!    <br>Back to <a href="..">shop home</a></h2>'; 
    } 
?> 
+0

所以我使用的代碼你在「註釋」區域代替了「if」語句中的代碼嗎? – Bigfootbud

+0

否註釋區域顯示var_dump($ _ POST ['xs'])'的輸出。 – simialbi

+0

謝謝,但我還沒有得到與陣列呢那麼遠...介意一點更詳細的幫助?根據我有多少尺寸,我會有一堆「var_dump($ _ POST ['xs'])」嗎?然後,「數組(2)」中的數字「2」表示我在頁面上有多少樣式? – Bigfootbud

相關問題