草庐IT

mysql_real_query

全部标签

php - 我应该使用 mysqli_real_escape_string 还是应该使用准备好的语句?

这个问题在这里已经有了答案:HowcanIpreventSQLinjectioninPHP?(27个答案)关闭9年前。我应该使用mysqli_real_escape_string还是应该使用准备好的语句?我现在看到了一个解释准备语句的教程,但我看到它们做与mysqli_real_escape_string相同的事情,但它使用更多行准备好的报表有什么好处吗?您认为最好的使用方法是什么?

php - Laravel Eloquent/Query Builder 中 LEFT JOIN 的 ON 子句中的参数化查询绑定(bind)

假设我想显示带有type="color"的完整奖项列表:AwardsType2013Winner=====================BlueAwardcolorTomRedAwardcolorGreenAwardcolorDan为了实现这个结果,我可以像这样在Laravel中进行查询:$year='2013';$awards=DB::table('awards')->leftJoin('winners',function($join)use($year){$join->on('awards.id','=','winners.award_id');$join->on('winner

php - 向 Wordpress 中现有的 WP_Query 添加条件

我想添加一些过滤器来选择需要的帖子,例如:functionexclude_post($query){if($query->is_home){//DosomePHPcode}return$query;}add_filter('pre_get_posts','exclude_post');如何向现有WP_Query实例$query添加新条件? 最佳答案 如果您想使用过滤器修改您的查询,您可以在您的函数中使用$query->set('post_type','post');,只需添加您的参数即可。如果你想修改主循环,你可以使用这个:glob

php - 明确匹配任何内容的 Doctrine Query Builder

我使用的是Doctrine2.4,我有一个包含如下方法的抽象基类:protectedfunctiongetBaseQueryBuilder($type){switch($type){caseself::TYPE_1;return$this->em->createQueryBuilder()->...lotsofclauses...;caseself::TYPE_2;return$this->em->createQueryBuilder()->...lotsofclauses...;/*manymoretypes...*/caseself::TYPE_N;return/*wanttore

PHP 日志 - mysql 与文件

我正在为我的PHP站点设置用户操作日志记录。您建议将它们存储在mysql中还是文本/日志文件中? 最佳答案 取决于你想用这些做什么,我会说:如果您需要从日志中获取数据,将它们存储在MySQL中可能会有所帮助如果您只需要一些您几乎从不使用的数据(但在您的网站上发生非法行为或类似情况时需要),一个文件可能就足够了为了不减慢太多速度,您也可以同时使用两者(我在一些流量有点大的网站上使用过,在这些网站上立即将数据存储在数据库中是不明智的):白天,将日志存储在文件中每天一次(或者每小时一次,你懂的),使用批处理来解析这些文件,并将数据放入数据

php - Kohana 3 ORM : advanced queries, 效率

所以我们都知道Kohana3的文档非常糟糕。那么我如何构造以下查询,其中我有一个“Player”和“Dragon”模型?SELECT*FROM`dragons`JOIN`players`ON(`dragons`.`player_id`=`players`.`player_id`)WHERE`uid`IN(1,2,3)ORDERBY`dragons`.`id`ASC我可以使用ORM::factory('dragon')->join("players")->on("dragons.player_id","=","players.player_id")进入连接部分,但我不能执行in子句。Ko

PHP 将 MySQL 日期时间转换为 Unix 时间戳

在将MySQL日期时间转换为Unix时间戳时,我对时区差异感到困惑。在我看来,MySQL日期时间(2011-02-0709:45:00)在服务器的本地时区中。我想将此日期时间转换为Unix时间戳,它始终处于GMT时区。为了进行这种转换,PHP将日期时间传递给strtotime。.日期时间字符串不包含时区,那么strtotime是否会假设参数是本地时区或GMT? 最佳答案 strtotime函数将假定日期时间在服务器的本地时区内。 关于PHP将MySQL日期时间转换为Unix时间戳,我们在

php - 如何在 DELETE QUERY 中编写 LEFT JOIN?

你能给我一个使用Doctrine的左连接的删除查询的例子吗? 最佳答案 这是不可能的。看到:http://trac.doctrine-project.org/ticket/2142您必须在where子句中使用子查询:http://www.doctrine-project.org/documentation/manual/1_2/en/dql-doctrine-query-language:subqueries尝试这样的事情:$q=Doctrine_Query::create()->delete('TableBb')->where('

php - 判断从 MySQL 返回的日期时间字符串是否为空的最佳方法?

未在MySQL中设置的日期时间字段将返回为0000-00-0000:00:00确定日期是否未在PHP中设置的最佳方法是什么?如果这些有效则无:if($date)//willreturntruebecauseitisavalidstringif(empty($date))//willalsoreturntrue.if(strtotime($date))//Ithoughtthiswouldworkbutitreturnsanegativenumberandistrue.我可以使用:if($date=='0000-00-0000:00:00')但是,如果我随后将列类型更改为仅日期,它就会中

php - Symfony2 - 通知 : Undefined offset: 0 due to a custom Query

我有这个错误:"Notice:Undefinedoffset:0inC:\wamp\www\Videotheque\vendor\doctrine\lib\Doctrine\ORM\QueryBuilder.phpline240"我正在创建一个在线视频集。有2个实体:电影和流派。在我的GenRepository方法中,我尝试将函数findAll()重新定义为与某个流派相关联的电影数量。这是函数:publicfunctionmyFindAll(){$genres=$this->_em->createQueryBuilder('g')//leftJoinbecauseIneedallthe