<?php?>
May 17th, 2016, 15:59
یک کلاس دارم تو فایل config.php با نام config
یک کلاس دیگه تو فایل add.php داریم با نام add
حالا میخوام کلاس add بتونه از برخی توابع داخل کلاس config استفاده کنه . و اومدم و از extends استفده کردم و add رو به config ارث دادم .
مشکلم سره اینه که حالا میخوام به متغییرهای داخل خوده add ذسترسی داشته باشم اررور میگیرم :
class config{
private $Dns;
public $connect;
private $error;
/*********DATABASE*********/
public function database(){
try{
$dns="mysql:host=localhost;dbname=cms2;charset=utf8;";
$connect=new PDO($dns,'root','');
$connect->exec("set names utf8");
}
catch(PDOException $error){
echo 'CONNECTION TO DB ERROR';
exit();
}
}
/*********SQL INJECTION XSS**********/
public function escape($type){
$type=trim($type);
$type=strip_tags($type);
$type=stripslashes($type);
$type=htmlspecialchars($type,ENT_QUOTES,"UTF-8");
$type=htmlentities($type,ENT_QUOTES,"UTF-8");
return $type;
}
class add extends config{
private $a=0;
/*use escape function in config.php*/
$_POST['name']=$this->escape($_POST['name']);
echo $this->$a; // ERROR : Undefined variable IN XAMPP
}
به کلاس A گیر داده میگه وجود نداره
البته این کد واقعی نیست اومدم لپ مطلب رو نوشتم و اصل مطلب رو گفتم که چطور به یک متغییر ساخته شده داخل یک کلاسی که خودش داره ارث میبره از یکی دیگه استفاده کنیم .
یک کلاس دیگه تو فایل add.php داریم با نام add
حالا میخوام کلاس add بتونه از برخی توابع داخل کلاس config استفاده کنه . و اومدم و از extends استفده کردم و add رو به config ارث دادم .
مشکلم سره اینه که حالا میخوام به متغییرهای داخل خوده add ذسترسی داشته باشم اررور میگیرم :
class config{
private $Dns;
public $connect;
private $error;
/*********DATABASE*********/
public function database(){
try{
$dns="mysql:host=localhost;dbname=cms2;charset=utf8;";
$connect=new PDO($dns,'root','');
$connect->exec("set names utf8");
}
catch(PDOException $error){
echo 'CONNECTION TO DB ERROR';
exit();
}
}
/*********SQL INJECTION XSS**********/
public function escape($type){
$type=trim($type);
$type=strip_tags($type);
$type=stripslashes($type);
$type=htmlspecialchars($type,ENT_QUOTES,"UTF-8");
$type=htmlentities($type,ENT_QUOTES,"UTF-8");
return $type;
}
class add extends config{
private $a=0;
/*use escape function in config.php*/
$_POST['name']=$this->escape($_POST['name']);
echo $this->$a; // ERROR : Undefined variable IN XAMPP
}
به کلاس A گیر داده میگه وجود نداره
البته این کد واقعی نیست اومدم لپ مطلب رو نوشتم و اصل مطلب رو گفتم که چطور به یک متغییر ساخته شده داخل یک کلاسی که خودش داره ارث میبره از یکی دیگه استفاده کنیم .