2017-10-06 64 views
-2

我正在製作一個網站,用戶可以將數據插入數據庫並跟蹤藥物的攝入量。 我有一個簡單的表格,提交到SQL數據庫:將文本字段轉換爲SQL的單選按鈕

<form method='post'> 
 
    <b>Dato:</b> <input type="date" name='date' id='date' value="<?php echo date('Y-m-d'); ?>" /><br /><br \> 
 
    <b>Tid:</b> <input type="time" name='time' id='time' value="<?php echo " $hour:$minute "; ?>" /><br /><br \> 
 
    <b>Medicin:</b><br /> <input type="radio" name="medicin" value="Medicin1" checked> Medicin1 <br /> 
 
    <input type="radio" name="medicin" value="medicin2"> Medicin2 <br /> 
 
    <input type="radio" name="medicin" value="other"> Other <input type="text" name="otherMedicin"><br /><br /> 
 
    <b>Kommentar:</b><br /><textarea name='comment' id='comment'></textarea><br /> <hr \> 
 
    <input type='submit' value='Send' /> 
 
</form>

將其提交給我發現有關我按照同樣的事情,以前有問題的數據庫。不幸的是,我無法讓它工作! html radio button with an "other" selection that has a text box

這裏是我的代碼的重要組成部分:

$users_date = mysqli_real_escape_string($con, $_POST['date']); 
$users_time = mysqli_real_escape_string($con, $_POST['time']); 
$users_medicin = mysqli_real_escape_string($con, $_POST['medicin']); 
$otherMedicin = mysqli_real_escape_string($db, $_POST['otherMedicin']); 
if ($users_medicin == 'otherMedicin') { 
     $medicinField = $otherMedicin; 
    } else { 
     $medicinField = $users_medicin; 
    } 

$users_comment = mysqli_real_escape_string($con, $_POST['comment']); 
$query = " 
INSERT INTO `myDatabase`.`medi_list` (`id`, `dato`, `tid`, `medicin`, `kommentar`) VALUES (NULL, '$users_date', 
    '$users_time', '$medicinField', '$users_comment');"; 

我還是很新的SQL,所以我會很感激的任何幫助,您可以把我的方式:)

+1

你說,它「不工作」,但你沒有說爲什麼還是什麼不工作。您收到錯誤訊息? (在這種情況下,你會得到什麼信息)你沒有得到預期的結果? (在這種情況下你現在得到什麼) –

回答

0

我見在你的代碼中的一些基本問題:

當你填充字段「$ otherMedicin」,你正在使用$分貝,而不是像其他的語句$ CON。

$ _ POST [medicin]永遠不會是「otherMedicin」,因爲那是你的文本輸入字段,而不是單選按鈕的名稱的名稱。您應該將此作爲您的條件:

if ($users_medicin == 'other') { 

這應該有所幫助。

+0

非常感謝你!這正是我需要完成的! 我一直在看這麼多,我看不出錯誤。 – Christina

相關問題