2016-04-15 46 views
-1

Table here... 我找不到問題,在它出演大約2小時後。這是輸出:......哦,所以在需要發佈更多細節忽略這個東西正是我想要的....我不能解決這個錯誤「Column'Nume_elev'不能爲空」

This is the output

if(empty($data_missing)){ 
    require_once('./mysqli_connect.php'); 

    $stmt = mysqli_prepare($dbc,"INSERT INTO elev(Nume_elev, Nume_Parinte, Numar_tel, Numar_Tel_P, ADRESA, elev_id) VALUES(?, ?, ?, ?, ?, NULL)"); 
    if($stmt === FALSE){ die(mysqli_error($dbc)); } 
    mysqli_stmt_bind_param($stmt,"sssss", $Nume_elev, $Nume_Parinte, $Numar_tel, $Numar_Tel_P, $ADRESA); 

    mysqli_stmt_execute($stmt); 

    $affected_rows = mysqli_stmt_affected_rows($stmt); 

    if($affected_rows == 1){ 

     echo 'Student Entered'; 

     mysqli_stmt_close($stmt); 

     mysqli_close($dbc); 

    } else { 

     echo 'Error Occurred<br />'; 
     echo mysqli_error($dbc); 
     mysqli_report(MYSQLI_REPORT_ERROR); 
     mysqli_stmt_close($stmt); 

     mysqli_close($dbc); 

    } 

} else { 

    echo 'You need to enter the following data<br />'; 

    foreach($data_missing as $missing){ 

     echo "$missing<br />"; 

    } 

} 

} 

?> 
+2

什麼是'$ Nume_elev'? – chris85

+0

可以請您出示電子表格(數據庫)結構嗎? –

+1

您不應該將NULL插入到'elev_id'中,因爲它是'AUTO_INCREMENT'列,只是將它完全從INSERT中移出。那不是你的錯誤。 – DavidG

回答

1

不要使用NULL值的自動增量列

$stmt = mysqli_prepare($dbc,"INSERT INTO elev(Nume_elev, Nume_Parinte, Numar_tel, Numar_Tel_P, ADRESA) 
VALUES(?, ?, ?, ?, ?)"); 

mysqli_stmt_bind_param($stmt,"sssss", $Nume_elev, $Nume_Parinte, $Numar_tel, $Numar_Tel_P, $ADRESA); 

另請檢查$ Nume_elev的值。由於您聲明Nume_elev列不能在數據庫中爲null,因此在將數據插入數據庫時​​不會接受NULL或''值。

請決定哪些列的值是NULL並做出相應的數據庫表中的變化。

+0

它幫助我,謝謝。現在我得到了另一個錯誤:d *我想哭* 你在你的SQL語法錯誤;檢查與您的MariaDB服務器版本相對應的手冊,以獲得在第1行的')VALUES(s,s,s,s,s)'附近使用的正確語法' –

+0

解決了!謝謝 。 –

相關問題