草庐IT

find-by-sql

全部标签

php - 如何演示二阶 SQL 注入(inject)?

所以我一直在尝试复制二阶SQL注入(inject)。这是我准备的两个基于php的站点的示例模板。我们就称它为选民登记表吧。用户可以注册,然后您可以检查您是否是注册选民。插入.php";$qry=mysql_query($sql_statement,$conn)||die(mysql_error());mysql_close($conn);Echo"Datainsertedsuccessfully";}?>选择.php";$result=mysql_query($sql,$conn);$row=mysql_fetch_row($result);$sql1="SELECT*FROMcana

php - 在 Codeigniter 中统计通过 distinct() 或 group_by() 过滤的结果

我想用CI(使用postgreSQL)统计我的事件记录查询结果。我正在使用count_all_results(),它适用于大多数查询,但在加入后使用distinct()或group_by()时就不行了,因为count_all_results()忽略了这些函数。这是一个修复程序,尚未在最新的(2.1.3)稳定版本中实现。https://github.com/EllisLab/CodeIgniter/commit/b05f506daba5dc954fc8bcae76b4a5f97a7433c1当我自己尝试在当前版本中实现此修复时,没有完成额外的过滤。行数保持不变。关于如何在当前版本中实现这

php - 从表 sql server (php) 获取元数据

我正在尝试从我的数据库(sqlserver)上的表中获取元数据。我执行查询以在SqlManagementStudio上获取该元数据并且它有效但在我执行时在php脚本上显示该错误:$row=sqlsrv_fetch_array($res):“在calc_string_size中遇到意外的SQL类型。”我怀疑问题出在php上查询字符串的构建上,但这不是因为我打印了该查询并且它是正确的。当我在选择(列描述)上添加一个字段时出现问题。有人知道这个问题吗? 最佳答案 你可能有sql_变量查询中的某处。这会引发错误->您必须将特定列转换为VAR

php - ctype_alnum 对抗 SQL 注入(inject)

准备好的语句不允许参数化表名。为了确保无法插入任何代码,我想使用ctype_alnum来验证进入数据库模块的所有表名(删除下划线后),以保护应用程序免受其他部分错误的影响。functioninsert($table){if(!ctype_alnum(str_replace("_","",$table)))thrownewException("Invalidtablename");$sql="INSERTINTO$tableVALUESvalue=:value";#...prepareandexecute}是否存在这不足以抵御的攻击?我在想例如multibytecharacterexpl

php - 我这里的错误是什么,显示 SQL 语法错误?

这个问题在这里已经有了答案:SyntaxerrorduetousingareservedwordasatableorcolumnnameinMySQL(1个回答)关闭8年前。$upper=$this->db->query("SELECT*FROM".DB_PREFIX."settingWHEREkey='ndz_limit_up'");$lower=$this->db->query("SELECT*FROM".DB_PREFIX."settingWHEREkey='ndz_limit_down'");请帮忙。

php - 在 PHP 7 中处理 foreach by-ref

到目前为止,我们一直在使用PHP5.5,代码似乎一切都顺畅。由于将其升级到7,大多数foreach()似乎都存在不一致的行为。例如:考虑下面的片段:$array=array('a','b','c');self::testForeach($array);...//$arrayispassedbyreferencepublicstaticfunctiontestForeach(&$array){foreach($arrayas$key=>$val){//producesa,basanoutputinPHP5//producesa,b,casanoutputinPHP7var_dump($v

php - Laravel:在父表上与 *where* 而不是 *find* 的 Eloquent 关系

我有一个表posts和posts_contents。我只想从一篇文章中获取内容,前提是该文章有display=1。(由于语言支持,我需要两个单独的表)帖子:iduser_iddisplay120221320421posts_contentsidpost_idlang_idnamedescription111HelloWorld221HereIsWhatIwannashow!331Don'tShowtheothers441HeyDisplaythatonetoo所以在laravel中我使用了Eloquent关系,但我只是不明白如何在特定情况下使用它。在文档中我只发现了以下情况:$p=Ap

php - 如何解决错误 : SQL authentication method unknown in Laravel-MySql

我使用docker,并且我有一个LaravelFramework5.5.25容器和另一个带有mysqlVer8.0.11forLinuxonx86_64(MySQLCommunityServer-GPL)的容器。在我的dockercompose配置中,我有这个:version:"2"services:mysql:image:mysqlports:-"3307:3306"command:--sql_mode=""所以,当Laravel尝试连接到MySql时,出现了这个错误:SQLSTATE[HY000][2054]Theserverrequestedauthenticationmetho

php - 如何防止在 Zend Framework 中编程的应用程序中的 SQL 注入(inject)攻击?

我对采埃孚的安全性没有任何概念。操作数据库一定要用Filter吗?也许绑定(bind)就足够了?这个怎么样:$users->update($data,'id=1');是否应该以某种方式过滤$data数组?请随意写下您对这个问题的任何了解。您能否提供一些有关ZF安全性的好文章的链接(主要是关于SQL注入(inject)和XSS)? 最佳答案 简答虽然ZF采取并提供了一些措施来保护您的应用程序,但您仍应采取与没有ZendFramework时相同的预防措施。关于您的代码片段,请查看关于Zend_DbintheReferenceGuide的

php - 用一个 SQL 查询拯救 20 个用户?

我在Doctrine中这样保存用户:$user=User();$user->name='peter';$user->save();有没有办法在一个sql查询中保存20个用户?还是我必须将上面的代码循环20次才能创建20个sql查询?谢谢 最佳答案 您可以将您的$user对象添加到Doctrine_Collection然后调用$collection->save(),它基本上会为您执行循环。 关于php-用一个SQL查询拯救20个用户?,我们在StackOverflow上找到一个类似的问题: