2017-03-27 114 views
-2

所以我已經調試了幾個小時,似乎無法解決問題。我有一個表單,它將會話信息導入會話,然後從會話進入一個類。爲什麼我的php函數不能插入數據庫?

形式 - >會話級>類 - >數據庫

類裏面那裏有一個功能,看起來像這樣:

function lagre($kunde) 
{ 
    $navn = $kunde->GetNavn(); 
    $telefon = $kunde->GetTelefon(); 
    $epost = $kunde->GetEpost(); 
    $antall = $kunde->GetAntall(); 

    $db = mysqli_connect("localhost","root","","Billett"); 
    if($db->connect_error) 
    { 
     die("Couldn't connect"); 
    } 
    else { 
     echo "Connected"; 
    } 

    $sql = "INSERT INTO `Billett`.`Billett` (`BillettID`, `Navn`, `Telefon`, `Epost`, `Antall`) VALUES (NULL, '$navn', '$telefon', '$epost', '$antall')"; 

    $resultat = mysqli_query($db,$sql); 

    if(!$resultat) 
    { 
     echo "<br> Values not inserted"; 
    } 
    else { 
     echo "<br> Values inserted"; 
    } 

} 

的問題是,該值不插入到數據庫中。我無法弄清楚爲什麼。有任何想法嗎?

+6

你不知道什麼是錯誤的,因爲你不檢查中的錯誤你的代碼。永遠不要假設代碼總是完美無缺地工作。使用['mysqli_error()'](http://php.net/manual/en/mysqli.error.php)從數​​據庫中獲取詳細的錯誤信息。 –

+0

當我添加echo mysqli_error($ resultat);沒有打印。這是否意味着沒有錯誤或只是我不會顯示? – poppynor

回答

-1

你嘗試不同的方式

$sql = "INSERT INTO `Billett`.`Billett` (`BillettID`, `Navn`, `Telefon`, `Epost`, `Antall`) VALUES (NULL, '".$navn."', '".$telefon."', '".$epost."', '".$antall."')"; 
+0

*這怎麼解決他們的問題?你應該解釋爲什麼這應該解決他們的問題。只是改變他們建立查詢的方式不應該解決*任何問題*。 –

-1

寫您正在使用Autocommit?如果沒有,那麼你需要將數據提交到數據庫,否則你的INSERT不沾:

/* commit transaction */ 
if (!$mysqli->commit()) { 
    print("Transaction commit failed\n"); 
    exit(); 
} 

來自實例PHP documentation

+0

除非它們顯式關閉自動提交,並且它們沒有指示它們,否則自動提交默認設置爲on。 –

相關問題