저는 일반적으로 SQL 또는 Oracle 데이터베이스에 INSERT 문을 만드는 것에 익숙합니다.내 WordPress 테이블에 레코드를 어떻게 삽입합니까?
그러나 phpMyAdmin을 사용하여 WordPress의 CustomerDB 및 사용자 지정 테이블이라는 사용자 지정 데이터베이스를 만들었습니다.
다음 코드를 사용하여 사용자 지정 테이블에 레코드를 삽입하려고합니다.
오류가 발생하지 않지만 레코드가 삽입되지 않습니다.
이 시점에서 SQL 주입 공격에 대해 걱정하지 않습니다.
내 INSERT 코드가 작동하면이를 처리 할 것입니다.
누군가 다음 코드가 WordPress의 테이블에 레코드를 삽입하지 않는 이유를 알고 있습니까? 대신 따옴표
<?php
//make database accessible
global $wpdb;
// Get data
$customername = $_POST["customername"];
$custaddress = $_POST["custaddress"];
$custcity = $_POST["custcity"];
$custstate = $_POST["custstate"];
$custzip = $_POST["custzip"];
// Database connection
$conn = mysqli_connect("localhost","myuser","mypass","CustomerDB");
if(!$conn) {
die('Problem in database connection: ' . mysql_error());
}
// Data insertion into database
$query = "INSERT INTO ‘CustomerDB.wp_customTable’ (‘customername’, ‘custaddress’, ‘custcity’, ‘custstate’,‘custzip’) VALUES ($customername, $custaddress, $custcity, $custstate,custzip)";
mysqli_query($conn, $query);
// Redirection to the success page
header("Location: thankyou.php");
?>
쿠스 지프에서 '$'달러를 놓친 것처럼 보입니다. – thodic
... 또한 mysql_error의 유효하지 않은 사용법, 식별자, 데이터베이스 이름 및 테이블 이름에 대한 따옴표를 따로 따로 인용 할 필요가 있습니다. SQL의 문자열 리터럴은 작은 따옴표로 묶어야하며, 실행 실패 및 오류 메시지 검색이 필요하지 않습니다. , 잠재적으로 안전하지 않은 값은 SQL 텍스트, – spencer7593