草庐IT

zend-optimizer

全部标签

php - 使用 PHP 和 Zend Framework 防止 SQL 注入(inject) - 如何?

我正在尝试保护我页面上的登录表单免受SQL注入(inject)攻击。在服务器端,我使用了ZendFramework(Zend_Db,Zend_Db_Table_Abstract),但是它内置的防注入(inject)功能:quote,quoteInto、quoteIdentifier不能很好地工作(据我所知如何使用它们)。其他方法如mysql_real_escape_string、addslashes似乎根本不起作用...这就是我要为防御实现的内容:functionprevent_from_sql_injection($str){if(preg_match('/[\'"]/',$str)

php - MySql SSL 与 Zend-Framework 的连接

我是Zend-Framework的新手,但我设法在我的PC上构建了一个简单的站点,其中有2个页面显示了本地数据库中表格的内容。问题是,当我在服务器上安装该站点时,它不起作用,因为在生产服务器中,必须使用SSL建立与本地mysql服务器的连接。我搜索了需要添加到application.ini以启用ssl连接的key,但我在ZendFramework文档中找不到任何内容。这是我的application.ini的代码resources.multidb.config.adapter="pdo_mysql"resources.multidb.config.host="localhost"reso

php - Zend Framework 数据库事务 - 无法回滚

好吧,让我先解决这个问题。我的问题与此类似:CannotrollbacktransactioninZendFramework我的表一直都是innoDB,一直都是。我已经检查了有问题的表,它确实是innoDB。关于问题..我有一个数据库实例,通过这个事务运行的模型实例访问同一个数据库:$db->beginTransaction();try{//Runaninsert$model_record->insert(array('single_item'=>'itsvalue'));//Morelogic,andrunanupdate.$model_record->this_value='tha

SQL 查询 : inner joins optimization between big tables

我在MySQL4.x数据库中有以下3个表:主机:(300.000条记录)id(UNSIGNEDINT)主键姓名(VARCHAR100)路径:(6.000.000条记录)id(UNSIGNEDINT)主键姓名(VARCHAR100)网址:(7.000.000条记录)host(UNSIGNEDINT)PRIMARYKEYpath(UNSIGNEDINT)PRIMARYKEY如您所见,架构非常简单,但问题在于这些表中的数据量。这是我正在运行的查询:SELECTCONCAT(H.name,P.name)FROMhostsASHINNERJOINurlsasUONH.id=U.hostINNER

php - 选择查询无法与另一个表连接 - JOIN Zend Framework

发生错误应用程序错误异常信息:消息:选择查询无法与另一个表连接这是我的代码:select()->from(array('seg'=>'Seguimientos'))->join(array('casos'=>'Asuntos_Estudiantiles'),'seg.cod_radicado=casos.codigo_radicado')->where('casos.cod_beneficiario=?',$cod_beneficiario);$query=$this->fetchAll($consulta)->toArray();return$query;}}我使用ZendFrame

php - 如何在 zend 框架中构建多个插入查询

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:HowdoIaddmorethanonerowwithZend_Db?我想构建这个查询INSERTINTOad-page(ad_name,page_name)VALUES('value1','value2'),('value3','value4'),....我试过了,没用$adpagemodel=newAdmin_Model_AdPage();if(count($adpage)>0)foreach($adpageas$page){$newdatap[]['page_name']=$page;$newdata[]

php - 使用 Zend 框架的多条件删除示例

谁能给我一个例子,说明当我有两个条件时,我如何使用Zend框架删除mysql中的一行?即:(尝试这样做)"DELETEFROMmessagesWHEREmessage_id=1ANDuser_id=2"我的代码(惨败的代码看起来像这样)//isthisourmessage?$condition=array('message_id='=>$messageId,'profile_id='=>$userId);$n=$db->delete('messages',$condition); 最佳答案 更好地使用这个:$condition=ar

php - Zend Framework 中的数据库事务 : Are they isolated?

使用ZendFramework,我需要(1)从MySQL数据库中读取一条记录,并且(2)立即写回该记录以表明它已被读取。我不希望其他进程或查询能够在步骤(1)和(2)之间读取或写入同一记录。我正在考虑为这些步骤使用事务。如果我使用以下方法,是否满足我的要求?Zend_Db_Adapter_Abstract::beginTransaction()Zend_Db_Adapter_Abstract::commit()Zend_Db_Adapter_Abstract::rollBack() 最佳答案 假设您正在使用InnoDBengine对

php - 使用 Zend Db 的嵌套选择

我有一个问题selectempl.idemp,(selectem.firstnmfromtbl_employeemasteremwhereem.idemp=empl.approvedby)asapprovedbyfromtbl_empleaveapplicationempljointbl_employeemasteremponempl.idemp=emp.idempjointbl_leavemasterlvmonempl.idleavemaster=lvm.idleavemaster我需要使用zenddb来构建这种类型的查询 最佳答案

php - Zend 选择 NOT IN

我有两个表有相关数据,我想从一个表中选择另一个表中不存在的所有记录,加上相关表上的一些其他条件,如下(123只是为了说明目的):TABLEAIDSOMETHINGTABLEBTABLE_A_IDTABLE_C_IDSOMETHING我的查询直接针对数据运行,如下所示SELECTA.SOMETHINGFROMAWHEREA.IDNOTIN(SELECTB.TABLE_A_IDASIDFROMBWHERETABLE_C_ID=123);如何在Zend中运行它? 最佳答案 你可以直接运行sql,使用$db->query();你的将只是:$