PHP로 데이터베이스에 데이터를 입력하려고합니다. 나는 정보가 나는 각각의 변수를 인쇄하여 확인하신 후 올바르게 때문에 HTML 양식에서 읽고있는 것을 알고PHP에서 데이터베이스에 데이터가 입력되지 않았습니다.
<?php
$username = 'username'; //username for database
$password = 'password'; //password for database
$hostname = 'localhost'; //host
$db_name = 'db_testdrubin'; //name of database
$db_selected = mysqli_connect($hostname, $username, $password, $db_name)//specify database
or die ("unable to connect");
if(isset ($_POST['submit'])){
$ID = ($_POST['ID']);
$fname = ($_POST['fname']);
$lname = ($_POST['lname']);
$address = ($_POST['address']);
$city = ($_POST['city']);
$state = ($_POST['state']);
$zip = ($_POST['zip']);
$phone = ($_POST['phone']);
$email = ($_POST['email']);
$books = ($_POST['books[]']);
$comments = ($_POST['comments']);
}
else{
echo'<p>not submitted</p>';
}
//up until this point the code works fine
$query = 'INSERT INTO Student VALUES ($ID, $fname, $lname, $address, $city, $state, $zip, $phone, $email, $books, $comments)';
$success = $db_selected->query($query);
if($success){
$count = $db_selected->affectd_rows;
echo '<p>$count were added</p>';
}
else{
echo '<p>error</p>';
}
?>
:
여기 내 코드입니다. 양식을 제출할 때 오류 메시지가 표시되지 않고 if/else 문에서 나오는 "오류"echo 문과 데이터베이스에 입력 된 데이터가 없습니다.
나는 또한이 시도 : 같은 결과
if (!mysql_query($db_selected, $query)){
echo '<p>error</p>';
}
. 내가 말하는 의미
NEVER 출력 무의미한 고정 불변 "오류"메시지. 삽입 쿼리를 작성하는 방식을 감안할 때 대규모 문법 오류와 대규모 SQL 주입 공격 취약점이 있습니다. –