草庐IT

php - 是否可以像 % :name% 这样的名称绑定(bind)参数

我正在测试一个小的搜索功能:但是我遇到了一个我似乎无法解决的错误。您可以在此处查看PDO查询:$search="test1";//latertobechangesto$_POST['search'];$sql="SELECTid,nameFROMclientsWHEEnamelike%:name%orderbyidLIMIT5";$stm=$db->prepare($sql);$stm->bindParam(":name",$search);$result=$stm->execute();如您所见,我正在尝试从我的查询中绑定(bind)参数%:name%,但我不知道这是否真的可行?我收

php - Laravel DB::表更新记录

我有这个问题DB::table('product_options')->where('product_id',$id)->where('size',$selected_size)->update(array('stock'=>WHATTOPUTHERE));在我放了WHATTOUPDATE的更新部分,我应该放什么才能使数字减1? 最佳答案 使用递减方法。http://laravel.com/docs/4.2/queries#updatesDB::table('product_options')->where('product_id'

php - fatal error : Call to a member function rowCount() on a non-object

我在我的登录中使用PDO(按照之前通过sqli的指示),我已经尝试了以下操作,但是我遇到了这个fatalerror,并且无法弄清楚要给它什么,所以它满足了错误:if($query->rowCount()>0){//sessionstuff//refreshpage}然后我试了一下:if($query->rowCount()==1){//sessionstuff//refreshpage}但我仍然得到这个:fatalerror:调用非对象上的成员函数rowCount()这是我在更改之前开始的内容:$count=$query->rowCount();最后,这是一个更好的片段,因此您可以了解

php - 使用 Zend_Db 时 pdo_mysql 与 mysqli

如果我使用Zend_Db类从后端数据库抽象我的查询,我使用哪个mysql驱动程序,pdo_mysql与mysqli有区别吗?我对pdo_mysql的理解是它也提供抽象,所以我假设如果我使用Zend_Db,那么无论如何我都不会利用作为mysqli一部分的额外功能。但是,从性能角度来看,一个比另一个更快吗? 最佳答案 Zend_Db,一般来说,是基于PDO及其各种适配器,如pdo_mysql。mysqli适配器仅针对那些使用未随PDO提供的服务器/主机的用户开发。就性能而言,我认为pdo_mysql和mysqli之间没有太大区别;从未听

PHP + PDO : Bind null if param is empty

我正在尝试这个(并且所有PoSTvar在用户发送之前都被处理,不用担心SQL注入(inject)):$stmt=$con->prepare($sql);$stmt->bindParam(":1",$this->getPes_cdpessoa());$stmt->bindParam(":2",$this->getPdf_nupessoa_def());当这些变量中的任何一个为NULL时,PDO会哭泣并且不让执行我的语句,并且在我的表上,我允许这些字段为nullables。有什么方法可以检查值是否为空,pdo只需将NULL绑定(bind)到then(我的意思是,一种聪明的方法,而不是if(

php - PHP 中带有 PDO 语句的 print_r 应该返回什么?

$dbh=newPDO("sqlite:/Library/WebServer/Documents/nwind2009.db3");$sql="SELECT*FROMCustomers";print_r($dbh->query($sql));返回:PDOStatement对象([queryString]=>SELECT*FROMCustomers)但如果我这样做:foreach($dbh->query($sql)as$row){echo$row['CompanyName'];}我得到了数据。为什么print_r不显示数据库结果?foreach中发生了什么特别的事情?我认为print_r向

php - 获取边界框内的点

我正在尝试从我的postgis数据库中选择某个边界框内的位置。我正在尝试通过此查询完成此操作://latlong-latitude,longitudeofaplaceSELECT*FROMplacesWHERESt_Contains(St_GeomFromText('Polygon((:top_left_long:top_left_lat,:bottom_right_long:bottom_right_lat))'),latlong);首先-我收到以下错误:Warning:PDOStatement::execute():SQLSTATE[HY093]:Invalidparametern

php - 如何防止显示 PDO 错误?

当PDOexecute()出现错误时,出于某种原因输出错误?我如何防止这种情况....我想将错误存储到$data['error']if(!$query->execute()){$data['success']='false';echojson_encode($data);return;}来自控制台日志:Warning:PDOStatement::execute()[pdostatement.execute]:SQLSTATE[HY093]:Invalidparameternumber:numberofboundvariablesdoesnotmatchnumberoftokensinC

php - 与 mysql_query 相比,使用 PDO::query 是否有任何安全优势?

我想重构一些遗留的PHP代码,我知道PDO通过添加准备好的语句等更安全,但我想知道使用PDO::是否有任何安全优势query()方法与mysql_query()方法。有吗? 最佳答案 除了PDO或mysql_*中的错误外,数据库查询的安全问题取决于正在运行的查询,而不是用于连接到数据库的内容。如果您使用userdata创建一个不安全的查询并使用PDO::query()执行它,它与使用mysql_query()一样不安全。同样,如果您有安全查询,使用PDO::query()运行它实际上与使用mysql_query()相同。

php - 如何使用 __autoload 从多个目录加载类?

跟进question,似乎只需使用下面的__autoload代码就可以解决重复问题,function__autoload($class_name){includeAP_SITE."classes_1/class_".$class_name.".php";}$connection=newdatabase_pdo(DSN,DB_USER,DB_PASS);var_dump($connection);结果,object(database_pdo)[1]protected'connection'=>object(PDO)[2]但这只能从一个目录加载类,其他目录呢?因为我将类分组在不同的目录中。