2016-05-31 55 views
0

我想從同一頁面上的輸入填充從數據庫中的值下拉的相同頁面本身。使用PHP動態在同一頁面上填充下拉列表使用PHP

我在論壇上試過幾個選項,但沒有幫助。

點擊提交後會進入空白的下一頁。

我試過onchange = AjaxFunction();正如一篇文章中的建議,但我仍然得到一個空白頁。

任何幫助表示讚賞。

這是我form.php的

<form action="connection.php" class="form-solid-blue" method="get"> 
    <div class="title"> 
     <h2></h2> 
     <h2>Tracking & Receiving</h2></div> 
     <div class="element-input<?php frmd_add_class("input2"); ?>"> 
     <label class="title"></label> 
     <div class="item-cont"> 
      <input class="small" type="text" name="store" placeholder="Store #"/> 
       <span class="icon-place"></span> 
     </div> 
     </div> 
     <div class="element-input<?php frmd_add_class("input"); ?>"> 
     <label class="title"></label> 
      <div class="item-cont"> 
       <input class="medium" type="text" name="userid" placeholder="UserId"/> 
       <span class="icon-place"></span> 
      </div> 
     </div> 
     <div class="element-input<?php frmd_add_class("input1"); ?>"> 
     <label class="title"></label> 
      <div class="item-cont"> 
       <input class="large" type="text" name="order" placeholder="Order Number"/> 
       <span class="icon-place"></span> 
      </div> 
     </div> 
     <div class="submit"> 
      <input type="submit" value="Send"/> 
     </div> 
     <div class="element-separator"> 
      <hr> 
      <h3 class="section-break-title">Tracking Numbers</h3> 
     </div> 
     <div class="element-multiple<?php frmd_add_class("multiple"); ?>"> 
      <label class="title"></label> 
      <div class="item-cont"> 
       <div class="large"> 
        <select data-no-selected="Nothing selected" name="multiple[]" multiple="multiple"> 

        <option value="option_1">option 1</option> 
        <option value="option_2">option 2</option> 
        <option value="option_3">option 3</option> 
       </select> 
       <span class="icon-place"></span> 
      </div> 
     </div> 
    </div> 
    <div class="submit"> 
     <input type="submit" value="Submit"/> 
    </div> 
</form> 

這是connection.php - 服務器端代碼

<?php 
     // Create connection to Oracle 
    $conn = oci_connect("XXXX", "xyxyx", "xyxyx"); 
    if (!$conn) { 
     $m = oci_error(); 
     echo $m['message'], "\n"; 
     exit; 
    } 

    $query = "SELECT TRACKING_NUMBER FROM JC_SHIPPED_ORDER_TRACKING WHERE EXT_PURCHASE_ORDERS_ID = :order_bv"; 
    $stid = oci_parse($conn, $query); 
    $order = $_GET['order']; 

    oci_bind_by_name($stid, ':order_bv', $order); 
    oci_execute($stid); 

    //Because order is a unique value I only expect one row 
    $row = oci_fetch_array($stid, OCI_ASSOC); 
    if (!$row) { 
    exit("The order " . $order . " is invalid. Please check and try again"); 
    } 
    $trackID = $row['TRACKING_NUMBER']; 
    echo "<form name=form1 method=POST action='form.php'>"; 
    //echo "<select name='TRACKING_NUMBER' onchange=AjaxFunction();>"; 
    while ($row = oci_fetch_array($stid)) { 
    echo "<option value=\"option_1\">" . $row['TRACKING_NUMBER'] . "</option>"; 


} 
    echo "</select>"; 
    //echo ("The order " . $order . " is valid."); 
    oci_free_statement($stid); 
    oci_close($conn); 
?> 
+0

爲什麼你試試,如果你想以相同的形式攜手共創中端PHP文件另一種形式。 – PHJCJO

+0

@PHJCJO - 感謝您的回覆。我試圖保持數據庫連接和查詢separate.And我想填充下拉form.php輸入和下拉的結果都在form.php – Max

+0

是的,我明白了,但我看到這行回聲「

」;在你的connection.php中,爲什麼 – PHJCJO

回答

0

這是我可以提供的信息做到最好。

在form.php的

<select data-no-selected="Nothing selected" name="multiple[]" multiple="multiple"> 
    <?php require 'path to connection.php'; ?> 
</select> 

哦從connection.php刪除這些

echo "<form name=form1 method=POST action='form.php'>"; 

echo "</select>"; 
+0

我把這個動作保持爲空,以便它保持在同一頁面上'並添加上面的代碼。但是這次它根本沒有加載form.php – Max