2013-03-09 112 views
0
if(isset($_POST['submit'])) { 
    $doc = new Doc_Schedule(); 
    $doc->doctor = $_POST['doctor']; 
    $doc->department = $_POST['dpt']; 
    $doc->sheduledate = $_POST['date']; 
    $doc->scheduletime = $_POST['time']; 
    if($doc->create()) { 
     $message = "Doctors Information Saved Successfully"; 
    } else { 
     $message = join("<br/>",$doc->errors); 
    } 
} 

<select name="doctor" id="Deptmentselectbox" class="AllSelectBoxes"> 
    <option value="">Select Doctor</option> 
<?php 
    $sql = "SELECT `fullname`,`depid`,`docid` FROM `doctors` ORDER BY fullname ASC"; 
    $result = $database->query($sql) or die('cannot connect to the database'); 
    while($row = mysql_fetch_array($result)) { 
     echo"<option value= ".$row['docid'].">".$row['fullname']."</option>"; 
    } 
?> 
</select> 

發送兩個ID我有一個選擇框,它會告訴我在一個表中的醫生。當我點擊某個醫生時,我想將doctors.dociddoctors.deptid(department id)發送給一個班級進行進一步處理。通過選擇框

我很難找到一個解決方案,其他丹創建一個新的部門ID選擇框。

+0

迄今提出的所有解決方案應該爲你工作 – 2013-03-09 20:59:49

+0

請考慮接受一個答案(點擊左側刻度),如果它實際上回答了你的問題 – michi 2013-04-14 12:50:12

回答

0

與該期權價值的分隔符結合這兩個值:

echo"<option value= \"{$row['docid']}|{$row['depid']}\">{$row['fullname']}</option>"; 

和分隔值提交後:或者

list($docid,$depid)=explode('|',$_POST['doctor']); 

,如果你只使用docid,你會得到depid從你的數據庫。

而且,順便說一句,停止使用mysql_*,因爲它被棄用,移動到mysqli_*PDO

0

我會用一些分隔符這樣的編碼值:

echo"<option value= ".$row['docid'].";".$row['deptid'].">".$row['fullname']."</option>"; 

然後你只是調用函數內發生爆炸:

list($docid, $deptid) = explode($_POST['doctor'], ";"); 
0

我的建議是使用PHP來連接,然後分開值。

<select name="doctor" id="Deptmentselectbox" class="AllSelectBoxes"> 
<option value="<?php echo "$doc['doctor']^$doc['department']"; ?> ">Select Doctor</option> 

然後,當處理:

$doc = explode("^", $_POST['doctor']); 
$doctor = $doc['0']; 
$department = $doc['1']; 

類似的東西將通過一個帖子對象發送多個值。

0

你可以有一個逗號分隔值:

echo "<option value=".$doc['docid'].",".$doc['depid']; ?>">".$row['fullname']."</option>" 

,可以在服務器上解析爲

ID = explode($_POST['doctor'], ","); 

或者你可以使用HTML5數據屬性。

echo "<option value=".$doc['docid']." data-DepId=".$doc['depid'].">".$row['fullname']."</option>" 
+0

HTML5數據屬性不會工作,除非你使用AJAX來發送數據。 – 2013-03-09 20:45:43