不清楚你是怎能调用这个类的。
get_a_db_ob()这个函数做实例化PDO用的,$this->DB->query($query)之前要调用一下函数get_a_db_ob()。
看了你的例子,get_a_db_ob()其实相当于构造函数。
get_a_db_ob()这个函数做实例化PDO用的,$this->DB->query($query)之前要调用一下函数get_a_db_ob()。
看了你的例子,get_a_db_ob()其实相当于构造函数。
解决方案 »
- 为什么不能存入BLOD数据?
- 我安装了wamp搭建了环境后.提示没有加载pdo_mysql扩展!求救!!!
- 新手 求指教,关于apache的配置问题。
- 查询数据库出错.
- 新手用mambo 请指点方向
- 请教smarty 标签替换问题~~~!!! 在线等
- 出现Fatal error: Maximum execution time of 60 seconds exceeded in.......
- 一个简单的问题,如何在Mysql里建立一个数据库?第一次用。
- PHP紧急求救????
- 关于微信公众平台开发中换行的问题!!!!
- 关于windows下php5不能加载php_iconv.dll
- $result= ereg("^\d$", "1"); 返回什么
我明明有实例化啊 ...
$this->DB = new PDO(
"mysql:dbname=$db_name;host=$db_host;charset=utf-8",
"$db_username",
"$db_password"
);为什么啊 !!!~
我用if($this->get_a_db_ob()){
echo "true";
}else {
echo "false";
}
结果 false...
为什么呢 ?
if($this->get_a_db_ob())如何判断是否实例化?
try
{
..//实例化操作
return true;
}
catch(...)
{
..
..
..
return false;
}
再做if判断。
if($this->get_a_db_ob()).. 判断结果是错误 ...
其实在我本地测试是成功的,在别人机器上就不好使了 ... 是配置问题还是程序本身的问题 ?
========================================
那就是没实例化没成功,
================================================================================
这个……别人的机器,有可能没开PDO扩展,你在本地测试成功,插入的数据处理能正常入库?
我在本地测试完全正确,插入数据库、提取数据都正常 。我想问下,我那段程序符合规范吗 ?
$query = "INSERT INTO `$this->table_name` ($fields) VALUES ($values)";
if(!$this->DB->query($query)){ ... }现在提示query找不到对象 .. 就是找不到$this->DB ...
可我明明有实例化啊 !~
protected $id = NULL;
protected $title = NULL;
protected $datetime = NULL;
protected $keyword = NULL;
protected $category = NULL;
protected $content = NULL;
protected $views = NULL;
public function __construct(){
$this->set_primary("id"); $this->set_table_name("news");
$fieldList = array("id","title","datetime","keyword","category","content","views");
$this->set_field_list($fieldList);
$this->get_a_db_ob();
}
public function create(){
if ($this->insert_into_DB()==true){
return true;
}else {
return false;
}
}
}?>就是这个 ... 它调用class_basic.php里边的insert_into_DB()遇到query错误 ..
我不明白的就是为什么在本地可以测试成功 ?
到底哪不规范 ?
我本地的register_golbals = On ,别人机器是Off ,但我把本地设置为Off还是运行成功。。可见跟这个配置没关系
到底哪不规范 ?
------------------------------------------------
这么看来问题应该是无法实例化PDO,请确认所需的配置是否完成。http://www.vshj.com/formality/2006/200611/20061101225905.shtml
但我记得PDO要是没装提示错误是找不到class PDO
郁闷了
我在朋友机器(LINUX)上测试就不成功了 。。
是不是PDO没装好 ,。。 LINUX下PDO怎么安装啊 ?
http://doc.sheup.com/linux/linux4579.htm
当然你可以一步步调试(比如try{..}catch{echo '无法实例化';}之类)看到底问题根源在哪,我的意见是你朋友机器PDO未安装.:-).
介绍了LINUX下的安装 ..谢谢啊 !!!其实我之前在本地也出过这个错,后来我把环境从新安装,又好了 ..
所以我一直认为是哪的配置有问题... 或者是程序本身不规范..
你可以phpinfo()下,查找PDO,看是否支持PDO.