Создаю свой собственный плагин для WordPress.
С кодом ниже, я могу запросить и вставить запись в базу данных через WordPress. С кодом ниже, я знаю, что уязвим для атаки SQL инъекций.
Я знаю, как предотвратить инъекцию через PDO и Mysqli, но меня беспокоит WordPress. Использует ли WordPress подготовленное утверждение.
Может кто-нибудь показать мне, как предотвратить атаки SQL инъекций в WordPress с кодом ниже.
global $wpdb;
// Add record
if(isset($_POST['submit'])){
$name = $_POST['txt_name'];
$uname = $_POST['txt_uname'];
$email = $_POST['txt_email'];
$tablename = $wpdb->prefix."myplugin";
if($name != '' && $uname != '' && $email != ''){
$check_data = $wpdb->get_results("SELECT * FROM ".$tablename." WHERE username='".$uname."' ");
if(count($check_data) == 0){
$insert_sql = "INSERT INTO ".$tablename."(name,username,email) values('".$name."','".$uname."','".$email."') ";
$wpdb->query($insert_sql);
echo "Save sucessfully.";
}
}
}