2010-01-19 42 views
0

確定這是我的原代碼,一個非常小的部分。我有兩頁充滿表格和框的頁面,然後是將信息放入我的數據庫的另一頁。PHP下拉回到以前的選擇

Oasis.php頁 這這裏是改變客戶端名稱和代碼的代碼。在整個頁面上。在變化事件。

$sql = "SELECT * FROM client_lookup ORDER BY Client_Full_Name ASC"; 
$result = mysql_db_query ($dbName, $sql, $dbLink); 

$options4=""; 

while ($row = mysql_fetch_array($result)) { 

    $id=$row["Client_Code"]; 
    $thing=$row["Client_Full_Name"]; 
    $options4.="<OPTION VALUE=\"$id, $thing\">".$thing; 
} 
?> 
<FORM name="form" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST"> 
<SELECT NAME="ClientNamefour" OnChange="this.form.submit()"> 
    <OPTION VALUE=0>Client 
    <?php echo $options4?> 

    </SELECT> 
</FORM> 

一旦低於這個形式Oasis.php頁面上提交其轉到過程頁面,並把信息到我的數據庫。一旦完成,我有一個頭讓我回到這個頁面。但是,默認情況下,客戶端總是返回。

在試圖從這一下降返回先前選定的客戶端下來我用這個代碼。自動選擇最後選擇的客戶端。

$sql = "SELECT * FROM client_lookup ORDER BY Client_Full_Name ASC"; 
$result = mysql_db_query ($dbName, $sql, $dbLink); 


session_start(); 

$current = isset($_SESSION['ClientNamefour']) ? $_SESSION['ClientNamefour'] : 0; 

$options4=""; 

while ($row = mysql_fetch_array($result)) { 


    $id = $row["Client_Code"]; 
    $value = $row["Client_Full_Name"]; 
     $key = "$id, $value"; 


    $selected = ($id == @$_SESSION['ClientNamefour']) ? ' selected' : ''; 
    $options4.="<option value=\"{$key}\"{$selected}>{$value}"; 
} 


?> 

<FORM name="form" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST"> 

<SELECT NAME="ClientNamefour" OnChange="this.form.submit()"> 

    <OPTION VALUE=0>Client 
    <?php echo $options4?> 

    </SELECT> 
</FORM> 

這個工程,但onchange事件並不行!所以它不會發布。 on change事件是關鍵的,或者我的整個頁面沒有填充信息。

+0

也許是我,但很難遵循你的解釋......有些段落可能? 此外,腳本的底部看起來像PHP代碼,但我沒有看到打開<? near/before「//處理頁面重定向」...這實際上是2個PHP腳本嗎? 如果沒有,你就必須把這個頭()調用的腳本底部的問題太... header()函數調用中有你輸出中任何事情之前作出。 – 2010-01-19 20:53:12

+0

有沒有我可以聯繫你解釋這個更好? – Eric 2010-01-19 21:06:27

+0

喔哇......不是第一次約會;)你介意我問你先編輯你的問題了一下,然後 - 如果仍然沒有運氣 - 我們可以嘗試的東西多一點指導? :) – 2010-01-19 21:11:23

回答

0

您閱讀$_SESSION['ClientNamefour']但從未寫信給它......我想你很困惑$_SESSION$_POST。如果您使用$_POST代替,$_POST['ClientNamefour']將是<select>的值作爲<select>具有「ClientNamefour」的名稱屬性。

在一個側面說明,你絕對不會操縱變量$current和 - 也許這就是PHP語法我不熟悉 - 當你操縱$_SESSION['ClientNamefour']有人品@只是$前商業...

+0

真正需要在這裏發生的是..會話從上面列出的下拉列表中獲取我的數據。它將把它帶到進程頁面,然後在進程頁面上將其帶回到此頁面。然後,當它回到第一頁時,下拉將填充會話或相同的客戶端,因爲當我離開該頁面時,下拉列表中的變化將起作用。 – Eric 2010-01-21 20:44:05