草庐IT

prepared-statements

全部标签

php - ON CONFLICT 使用 pg_prepare() 错误 'name' 不存在

我有一个使用此方法的简单数据库类function__construct($host,$user,$pass,$db){$this->link=pg_connect("host=$hostport=5432dbname=$dbuser=$userpassword=$pass")or$this->error();}publicfunctionrun($sql,$args=null){if(!$args)$this->query=pg_query($sql);else{$v=md5(uniqid(mt_rand(),true));$this->query=pg_prepare($v,$sql

PHP 三进制 : Inline if statement

虽然以下代码没有任何问题,但它困扰着我,因为我知道它可能只是一行简单的代码。if(Auth::user()->id!=1){echoUser::where('owner',Auth::user()->id)->where('status',2)->count();}else{echoUser::where('status',2)->count();}我只是在构建语句时遇到了问题。如果有人可以建议,我已经尝试了几种变体:echoUser::(Auth::user()->id!=1?where('owner',Auth::user()->id)->)where('status',2)->c

php - 有效地删除多个表中的数据mySQLi Prepared Statement

这个问题在这里已经有了答案:HowtodeletefrommultipletablesinMySQL?(7个答案)关闭3年前。我正在从多个表中的dB中删除数据。我正在使用模式将数据用户名发送到delete-member.php以确认(删除),如下所示:$('.delete-button').on('click',function(e){varusername=$(this).attr('data-id');$('.confirm-delete').attr('data-id',username);});$(".confirm-delete").on('click',function(e

具有 PDO 的基于 PHP 类的用户系统 - 在非对象上调用成员函数 prepare()

我已经做了相当多的研究、故障排除和搜索,试图解决我的问题,但没有成功。所以这是错误...在非对象上调用成员函数prepare()生成此错误的代码在我的用户Auth类中,如下所示...$this->dbManager->db->prepare('INSERTINTOusers(email,password,user_salt,is_admin)VALUES(:email,:password,:user_salt,:is_admin)');dbManager来自$db,我已将其传递到我的类的__construct中,如下所示...publicfunction__construct($db)

if-statement - .phtml 和 .php 中的 If 语句

我无法理解文件扩展名.phtml。根据我的阅读,它应该是一种同时使用html和php的方法(如果我弄错了请纠正我)。我想做的很简单,我有一个php变量,如果它满足特定条件,则应执行一些html代码,否则应执行其他一些html代码。我的代码是:12当我将它保存为.php文件并运行时,我得到的输出仅为“1”,但对于.phtml,我得到的是“12”。谁能解释一下为什么? 最佳答案 你需要配置运行.php/.phtml扩展,所以AddTypeapplication/x-httpd-php.php.phtml.html在你的httpd.con

php - zend 框架 : how to prepare and execute WHERE IN clause?

我想准备一个在循环内使用的语句。当我尝试执行该语句时,我在日志中看到一条错误消息,提示“参数编号无效:未绑定(bind)任何参数”。我的代码有什么问题?$itemSelectSql="SELECT*FROM`tblItems`WHERE`itemID`IN(?)";$itemSelectStmt=newZend_Db_Statement_Mysqli($this->db_ro,$itemSelectSql);while(){...$itemIds=array();//populate$itemIdsarray...$itemSelectStmt->execute(array($item

PHP Prepare 方法在调用两次时不起作用?

我正在使用如下准备方法:$db=newmysqli("localhost","***","***","***");if($db->connect_error){die('ConnectionError');}$id=1;if($stmt=$db->prepare('SELECTnameFROMtableWHEREid=?')){$stmt->bind_param('i',$id);$stmt->execute();//$stmt->close();echo"Success";}else{echo"Somethingbroke:/";}$id=2;if($stmt=$db->prepar

php - fatal error : Switch statements may only contain one default clause in mpdf. PHP

我正在使用mPDF,它在本地主机上运行良好。我将项目上传到实时服务器,但它没有正确生成pdf。WriteHTML($body);$mpdf->Output('SaveToPDF.pdf','D');在顶部,我放置了错误显示代码。要查看错误发生了什么问题,我有以下错误。Fatalerror:Switchstatementsmayonlycontainonedefaultclausein/customers/d/e/a/....URL..GO..HERE/mpdf.phponline1432我在我的本地主机上使用PHP版本5.6.31,在现场我使用的是one.com,在那里我可以切换到不同

php - PDO : Select using a prepared statement returns column name

我正在尝试在准备好列的地方使用准备好的语句即SELECT?FROMusers现在如果我把它正常工作SELECTidFROMusers但是执行第一条语句,值是列名。id=id0=0我做错了什么,或者这可能吗? 最佳答案 不可以,您不能绑定(bind)列名或表名。这里有更多信息EscapingcolumnnamesinPDOstatements 关于php-PDO:Selectusingapreparedstatementreturnscolumnname,我们在StackOverflow上

php - pg_prepare() 准备好的语句(不是 PDO)是否可以防止 SQL 注入(inject)?

我正在处理的目标系统不支持PDO,尽管我在上使用PHP5.1.x寻求防止SQL注入(inject)的解决方案PostGres-DB8.2+。目前没有切换到PDO的机会。我目前的解决方案是pg_prepare-prepared语句://TryingtopreventSQL-Injection$query='SELECT*FROMuserWHERElogin=$1andpassword=md5($2)';$result=pg_prepare($dbconn,"",$query);$result=pg_execute($dbconn,"",array($_POST["user"],$_POS