草庐IT

db_hosts

全部标签

PHP $_SERVER ['HTTP_HOST' ] 转义,这看起来可以接受吗?

我刚刚开始学习转义并开始阅读有关使用$_SERVER['HTTP_HOST']由于XSS攻击的风险。我想到了这个,想知道我是否可以得到一些关于我的尝试的反馈。htmlspecialchars(filter_var($_SERVER['HTTP_HOST'],FILTER_SANITIZE_URL),ENT_QUOTES,'UTF-8')看起来还好吗?这在很大程度上取决于这个变量的安全性,我只需要请求输入即可。编辑:我将在整个站点中使用它进行显示,包括基本的anchor引用、表单操作等。 最佳答案 不同的情况应该使用不同的转义函数,例

php - 在执行 UNION 查询时,如何让 Zend Db 返回行集而不是数组?

我有一个结果集,它是MySQLUNION查询的结果。我用来获取数据的代码是:$union_select=$PagesTable->getAdapter()->select()->union(array('('.$legal_resources_select.')','('.$pages_select.')'));$PagesTable->getAdapter()->fetchAll($union_select)$PagesTable扩展Zend_Db_Table_Abstract。完整的选择太大而无法在此处发布,我认为它与这个特定问题无关。如果我错了,请告诉我。目前这是返回一个结果数组

php - 使用 SQL 搜索 DB2 进行分页的最快/最有效的方法

现在我执行两个单独的SQL语句,一个执行SELECTCOUNT(*),其条件与搜索语句基本相同。我不是最擅长做这些陈述,有时有点慢,我想知道是否有更好的方法来做我所做的事情。可能只执行一个SQL语句并在PHP中执行更多工作?这是一个示例“搜索包含”我有语句。在第二条语句中,您将看到Y之间的X,部分由第一行计数语句的结果计算得出。SQL行数:SELECTCOUNT(*)FROMitemmastLEFTOUTERJOINitemwebONiline=lineANDiitem=itemJOINlinemstONiline=llineLEFTOUTERJOINcustordONopline=i

php - 在 zend db 中检索最后插入的 user_id

如何检索最后插入的用户ID?我必须使用该用户ID将该用户ID插入到下一个查询中,该查询也应该仅在此事务中完成。我的查询:$db->beginTransaction();$sql=$db->query("INSERTINTOuser(user_id,title)VALUES(:p_user_id,:p_title)",array('p_user_id'=>'','p_title'=>$title)); 最佳答案 您可以使用此方法检索最后插入的ID:$db->lastInsertId()用你的代码:$db->beginTransacti

php - 在 zf2 mvc 之外使用 Zend_Db zf2 模块

我正在编写一个不基于zf2mvc的PHP应用程序。我只想使用Zend_Dbzf2模块。我如何配置我的应用程序才能知道如何在需要的地方找到Zend_Db相关的PHP文件?我用phyrus下载了zf2Zend_db模块,并安装在vendor/zf2/php位置。我尝试使用以下命令将模块添加到包含路径:set_include_path("../vendor/zf2/php".PATH_SEPARATOR.get_include_path());我在目录Model/中创建了与每个​​表相关的模型类文件(使用zend-db-model-generator)。我的主要应用程序包含以下内容:useD

php - 无法使用 CURL 请求设置 "Host:" header

我正在尝试使用一些基本身份验证(通过发送加密header)发出CURL请求。但是,当我尝试设置"Host:_"header时,远程服务器响应:BadRequest:Yourbrowsersentarequestthatthisservercouldnotunderstand.下面是调用CURL的代码。请注意,只要我注释掉$http_header变量中的"Host:url"header,它就会起作用。但是,它在目标服务器上用作身份验证过程的一部分,所以我不能简单地删除它。$curl=curl_init();$opt=array(CURLOPT_URL=>$url,CURLOPT_RETU

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 - Yii2 db getStats(db查询数)

在Yii的Db-component中有一个有用的方法getStats$sql_stats=YII::app()->db->getStats();echo$sql_stats[0]//thenumberofSQLstatementsexecutedecho$sql_stats[1]//totaltimespentOfficialdocumentationlinkYii2有获取这些信息的方法吗? 最佳答案 这里是Yii2的等价物:$profiling=Yii::getLogger()->getDbProfiling();$profili

php - DB::table 与 Eloquent 模型 - Laravel 数据库种子

在研究DatabaseSeeder时,经常看到人们在Seeder类中使用DB::table('my_table')->insert(['column'=>'value']).我想知道关于为什么我应该使用DB::*而不是MyModel::*的明显约定背后的原因执行此类任务。 最佳答案 最重要的是,因为使用DB插入,您可以一次执行多个插入。尤其是在对许多大表进行播种时,这比每次插入执行一个查询要快得多。http://laravel.com/docs/master/queries#insertsDB::table('users')->in

php - 使用 DB::table() 或 Model::all() Laravel 的 Eloquent

我想知道为什么很多人使用$users=DB::table('users')->get();而不是$users=Users::all();在Laravel项目中?什么是原因?问候 最佳答案 您可以这样做,因为Model和DBfacade都实现了生成Builder实例的函数。https://laravel.com/api/5.2/Illuminate/Database/Eloquent/Model.htmlhttps://laravel.com/api/5.2/Illuminate/Database/Query/Builder.html