2017-04-04 26 views
0

大家好,我還是新的PHP和現在得到我的代碼問題,問題是它不能我插入數據保存到MySQL甚至我的連接是成功的,我不明白爲什麼和那個代碼有什麼問題,需要你的建議。由於無法插入數據在MySQL中使用PHP即使連接是成功

<?php 
$sql_insert= "INSERT INTO pegawai (id_pegawai, nip, nm_pegawai, ttl_pegawai, gender_pegawai, agama_pegawai, alamat_pegawai, tgl_masuk, jenis_pekerjaan, status_pegawai, pangkat_pns, ijazah_terakhir,thn_lulus) VALUES ('$id_pegawai','$nip','$nm_pegawai','$new_ttl','$gender','$agama', $alamat','$masuk','$jenis_pekerjaan','$stts','$pangkat','$ijazah','$jurusan','$thn')"; 
mysql_query($kon, $sql_insert); 
?> 
+1

如果你是新的,你不應該使用功能像10年前不支持的'mysql_query'。使用現代PDO數據庫訪問。請參閱http://stackoverflow.com/q/12859942/1255289 – miken32

+0

使用PDO或mysqli。你不顯示你正在得到什麼錯誤,但我注意到你有12個指定的列和13個值。他們必須匹配。 –

+0

謝謝@ miken32,我試過的主要問題使test.php腳本有同樣的問題連接成功,但它不能保存數據,連接MySQL我使用此代碼: –

回答

1

由於miker32解釋mysql_query已經過時,你可以使用mysqli_query,而不是和我們使用所以這是一個有點更安全的準備bind_baram:

$kon= mysqli_connect("localhost","your_username","your_password","your_dbname"); 

if (!$kon) { 
    die("Connection failed: " . mysqli_connect_error()); 
} 

$sql_insert= mysqli_prepare("INSERT INTO pegawai (id_pegawai, nip, nm_pegawai, ttl_pegawai, gender_pegawai, agama_pegawai, alamat_pegawai, tgl_masuk, jenis_pekerjaan, status_pegawai, pangkat_pns, ijazah_terakhir,thn_lulus) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)"); 

mysqli_stmt_bind_param($sql_insert, 'issssssssssss', $id_pegawai,$nip,$nm_pegawai,$new_ttl,$gender,$agama, $alamat,$masuk,$jenis_pekerjaan,$stts,$pangkat,$ijazah,$jurusan,$thn); 

mysqli_query($kon,$sql_insert); 
+1

Thanks @amr_aly –

相關問題