草庐IT

mysqli_query

全部标签

mysqli_stmt_bind_result 上的 PHP 怪异段错误

将PHP脚本从PHP5.2迁移到PHP5.3时,我遇到了以下问题:该脚本的一般用途是数据挖掘。我有一个向MySQL服务器添加数据的程序。因为它确实是重复的,所以我(不久前)重写了它以使用MySQLi,特别是准备好的语句,因为总共有3个可能的查询要执行。无论如何,现在,在PHP5.3服务器上,脚本在以下行崩溃:mysqli_stmt_bind_result($prepCheck,$id1);其中$prepCheck是使用$prepCheck=mysqli_prepare($con,$checkQuery)ordie("Error");创建的。查询在MySQL服务器上运行良好(即$chec

php - Mysqli语句的 `close()`方法是什么?

有人能告诉我,当你更新、插入、删除......然后你应该像mysqli_stmt::close();那样关闭它吗??我查看了PHP手册,但不明白close()的实际作用。例子:$stmt=$dbh->prepare("SELECT`user_email`FROM`users`WHERE`user_email`=?LIMIT1");$stmt->execute(array($email));$stmt->close();我的问题的下一部分是,例如,如果我在transaction中的每个execute()之后对我在transaction我应该单独关闭它们吗?...因为这是一个交易,我不确定

php - 学说 2 和 ORM : how to cache every query for some entity?

我与这个问题斗争了很多时间,发现正式地,我只能缓存一些自定义查询(查询对象上的useResultCache(true))。但是我需要将应用程序中的每个查询缓存到某个表中。EntityManager上的find*方法怎么样?...有人可以帮我找到一个优雅的解决方案吗? 最佳答案 这还不受支持,您最终应该在服务层或扩展存储库中处理它。您正在寻找的是secondlevelcacheasinHibernate,它基本上允许您插入一个键值存储,如redis、riak、mongodb等,以便在操作是简单的获取操作时使事情变得非常快。在https

php - 如何在 pdo->query 中添加变量值

我想升级我当前的代码,它不断地用PDO注入(inject)sql。目前我一直坚持在PDO查询中使用变量。如果我有两个这样的参数$rowsPerPage=3;//bydefaultweshowfirstpage$pageNum=1;if(isset($_GET['page'])){$pageNum=mysql_real_escape_string($_GET['page']);}$offset=($pageNum-1)*$rowsPerPage;我有这样的查询$STH=$DBH->query("SELECTNews.ID,LEFT(NewsText,650),Title,AID,Date

php - mysqli_select_db() 期望参数 1 为 mysqli,给定的字符串

我是Mysqli_*的新手,我遇到了这些错误:Warning:mysqli_select_db()expectsparameter1tobemysqli,stringgiveninD:\Hosting\9864230\html\includes\connection.phponline11Warning:mysqli_error()expectsexactly1parameter,0giveninD:\Hosting\9864230\html\includes\connection.phponline13数据库选择失败: 最佳答案

php - 为什么 MySQLi 库本身不支持命名参数?

来自http://php.net/manual/en/mysqli.quickstart.prepared-statements.php的正确MySQLi参数化查询语法:$stmt=$mysqli->prepare("INSERTINTOtest(id)VALUES(?)");$stmt->bind_param("i",$id);但绝不是这样的:$stmt=$mysqli->prepare("INSERTINTOtest(id)VALUES(:id_value)");$stmt->bind_param("i","id_value",$id);在我看来,命名参数替换是在API级别实现的合

PHP启动无法加载动态库/usr/lib/php/20151012/php_mysqli.dll

我有ubuntu14.04EC2实例。我已经在上面安装了php7。当我执行任何php命令,如php--version或任何其他命令时。我收到以下错误PHPWarning:PHPStartup:Unabletoloaddynamiclibrary'/usr/lib/php/20151012/php_mysqli.dll'-/usr/lib/php/20151012/php_mysqli.dll:cannotopensharedobjectfile:NosuchfileordirectoryinUnknownonline0我试过跟随在php.ini中启用php_mysqli.dll启用my

php - 有什么方法可以打印 mysqli->execute() 进行的实际查询吗?

我有一个像这样执行的复杂查询:if($stmt=$dbi->prepare($pt_query)){$stmt->bind_param('ssssssssi',$snome,$scognome,$ssocieta,$svia,$slocalita,$sprovincia,$scap,$stelefono,$sfax,$uid);$stmt->execute();echo$dbi->error;$stmt->close();}else{printf("Error->%s\n",$dbi->error);}这件事没有任何错误地失败了,它只是没有更新数据库。由于在此之前要处理大量数据,我想知

php - MySQLi 中的参数

我正在将PHP与MySQLi结合使用,我遇到了类似这样的查询SELECT$fieldsFROM$tableWHERE$this=$thatAND$this2=$that2到目前为止,我已经编写了一些代码来拼接我给它的数组,例如:$search=array(name=michael,age=20)//turnsintoSELECT$fieldsFROM$tableWHEREname=michaelANDage=20有没有更有效的方法来做到这一点?我很担心MySQL注入(inject)-这似乎非常脆弱。谢谢! 最佳答案 奇怪的是,您问题

php - 是否可以将 mysqli_fetch_object 与准备好的语句一起使用

我看到的所有使用mysqli_fetch_object的例子都使用mysql_query(),我无法让它与准备好的语句一起工作。有谁知道这段代码有什么问题,因为fetch_object返回null。$sql="select1fromdual";printf("preparing%s\n",$sql);$stmt=$link->prepare($sql);printf("preparestatement%s\n",is_null($stmt)?"isnull":"created");$rc=$stmt->execute();printf("numrowsis%d\n",$stmt->nu