Добрый вечер, помогите пожалуйста, был класс
PHP:
скопировать код в буфер обмена
Class DB {
function ms_connect()
{
$query = mysql_connect($this->db_host, $this->db_user, $this->db_pass); return true;
}
//метод добавления инфы в базу
function insert_db($data,$table)
{
//$str = explode(",",$str);
$query = "INSERT INTO $table VALUES ('$str')";
if($result)
return true;
}
/*и остальные методы*/
}
короче все остальные классы были написаны основываясь на этом, но тут я обнаружил что после всех моих трудов над безопасностью,(детальная обработка всех переменных)
всё равно есть дырки, короче при закрытии одной появляется другая и всего не предусмотришь, так как одна голова, я решил использовать PDO
с Английским туго но в мануале примеры просмотрел
как мне переделать этот класс и этот метод под PDO?
и в чём ошибка здесь?
PHP:
скопировать код в буфер обмена
Class DB {
function ms_connect()
{
$query = mysql_connect($this->db_host, $this->db_user, $this->db_pass); return true;
}
//метод добавления инфы в базу
function insert_db($data,$table)
{
$db_pdo = new PDO("mysql:host=$db_host;dbname=$db_name", 'ххх', 'ххх');
//$str = explode(",",$str);
foreach($data as $column=>$value)
{
$data_update[] = "$column";// массив для запроса в базу, колонки
$data_data[] = ":$column";// массив для запроса в базу, сами данные
}
$columns = implode("','",$data_update); $column_value = implode("','",$data_data); $sql = "INSERT INTO $table ('$columns') VALUE ('$column_value')";
$sth = $db_pdo->prepare($sql);
//echo $sth->execute($data);
if ($sth->execute($data)){
echo "всё ровно";
}
else{
echo "хрен";
}
}
/*и остальные методы*/
}
вот так обращаюсь
require_once('includes/classes/DB.class.php');
$db = new DB();
$db->ms_connect();
$data=array("id_post"=>"NULL","name_doc"=>"111","like_post"=>"222","de_like_post"=>"333");
$db->insert_db($data,'like_iv');
помогите найти ошибку или подскажите где есть литература на русском про функции PDO