2017-08-30 74 views
-1

它的工作,但是當我將數據添加到我的數據庫時,數據將兩次。我不知道我的語法是錯誤的還是我的代碼錯誤。插入數據由PHP和MySQL

這裏的結構:

+2

可能是因爲你在'while'中執行查詢,可能是因爲你的逆變運行了兩次相同的值 – scaisEdge

+2

。 – DontVoteMeDown

+0

@DontVoteMeDown我該怎麼辦?我不知道如何改變這一點。 –

回答

0

你越來越多刀片,因爲你是在$reservations循環每個記錄。如果您預期只有一項記錄預訂,您應該首先了解爲什麼要獲取多條記錄。

這且不說,通過免去您while循環改變你的代碼:

if(isset($_POST['submitBtn']) && $row = mysqli_fetch_array($reservation)){ 

    if($row['reservefrom'] == $checkin) die("Same Date"); 

    $lastname = $_POST['text_lastname']; 
    $firstname = $_POST['text_firstname']; 
    // ... other values, then execute your query 

}else{ 
    // either submitBtn was not posted or no result were found in $reservation 
} 

我注意到還有你在你的代碼中使用return,但代碼似乎並沒有成爲一個函數中,這樣的困惑。如果它在一個函數中,那麼從內部開始echo可能是個壞主意,除非該函數專門用於直接向瀏覽器發送數據。