Ваш код немного сложен для понимания с точки зрения структуры, но вы определенно неправильно используете PDO
, вводя неанизированные POST
данные.
Если бы я попытался преобразовать ваш образец во что-то работающее, я бы предложил следующие поправки:
( Примечание : при условии, что $this->connection->
является вашим объектом PDO)
Blok.html
(не знаю, почему вы назвали этот PHP файл Blok.html
)
<?php
$sinif = new macex();
if ($_POST) {
$sinif->daireekle( $_POST );
}
?>
macex.php
function daireekle( $postArray ){
// Parameterised PDO will mostly prevent SQL Injection, but it's still best practice
// to validate and sanitize your inputs, especially if they are coming from the user
$daire_no = $postArray ['daireno'];
$daire_adi = $postArray ['daireadi'];
$daire_soyadi = $postArray ['dairesoyadi'];
$daire_statu = $postArray ['statu'];
$dpass = $postArray ['dpass'];
// Define the query with positional params
$sql = 'INSERT INTO users (KULLANICIADI, SIFRE, TIPI, ADI, SOYADI) VALUES (?,?,?,?,?)';
// Create an array of your params in the order they apply to the query
$paramsArray = array('$daire_no','$dpass','$daire_statu','$daire_adi','$daire_soyadi');
// Prepare the parameterised query
$query = $this->connection->prepare($sql);
// Execute the INSERT query with the parameters
$query->execute($paramsArray);
}
Конечно, вы можете использовать различные варианты вышеупомянутых, включая именованные параметры, но это кратко объяснить в соответствии с вышеизложенным.