如何在php html中的数据库mysql中插入记录

时间:2016-06-25 11:57:22

标签: php html mysql insert

注意:未定义的索引:第13行的C:\ xampp \ htdocs \ sekolah \ admin \ insert.php中的nama

注意:未定义的索引:第14行的C:\ xampp \ htdocs \ sekolah \ admin \ insert.php中的nis

<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "root", "root", "school");

// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}

// Escape user inputs for security
$sekolah = mysqli_real_escape_string($link, $_POST['sekolah']);
$nama = mysqli_real_escape_string($link, $_POST['nama']);
$kelas = mysqli_real_escape_string($link, $_POST['nis']);

// attempt insert query execution
$sql = "INSERT INTO sekolah (sekolah, nama, nis) VALUES ('$sekolah', '$nama', '$nis')";
if(mysqli_query($link, $sql)){
    echo "Records added successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}

// close connection
mysqli_close($link);
?>

2 个答案:

答案 0 :(得分:0)

if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
@$sekolah = mysqli_real_escape_string($link, $_POST['sekolah']);
@$nama = mysqli_real_escape_string($link, $_POST['nama']);
@$kelas = mysqli_real_escape_string($link, $_POST['nis']);
$sql = "INSERT INTO sekolah (sekolah, nama, nis) VALUES ('$sekolah', '$nama', '$nis')";
if(mysqli_query($link, $sql)){
echo "Records added successfully.";
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
mysqli_close($link);
?>

在变量之前包含@,因为在localhost中你可以获得未定义的索引错误。

答案 1 :(得分:0)

未定义的索引意味着,在$ _POST数组中,没有键nama和nis的索引(键)。在尝试访问它之前检查值是否更安全是更安全的:

使用isset($_POST['nama'])检查该变量是否存在: