草庐IT

MYSQLI_BOTH

全部标签

php - 使用mysqli发布到数据库

我正在学习php并尝试完成以下工作:prepare("INSERTINTOtest(dname,daddress)VALUES(?,?)");//TODOcheckthat$stmtcreationsucceeded//"s"meansthedatabaseexpectsastring$stmt->bind_param("s",$dname,$daddress);$stmt->execute();$stmt->close();$mysqli->close();?>它仅适用于一个bind_param而不是2。如果从代码中删除了$daddress则它会发布。该表单在数据库中有26个帖子,我

php - Mysqli 获取数组第n行

我有以下获取单行的代码:$query="SELECT*FROMtranslationsWHEREiddoc='$id'ANDsubmitted=1;";$result=mysqli_query($query);$row=mysqli_fetch_array($result);我知道这在while循环中很有用,您可以在其中循环遍历结果。但我需要能够抓取满足此条件的特定行。此伪代码之后的内容:$query="SELECT*FROMtranslationsWHEREiddoc='$id'ANDsubmitted=1;";$result=mysqli_query($query);$arrayo

php - 为什么mysqli open transcation锁住数据库?

我正在尝试使用mysqli插入数据,但出现了一些奇怪的行为。例如,当我第一次使用$mysqli->autocommit(FALSE);并花了几分钟运行我的PHP并等待提供的查询时,它将保留数据库直到$mysqli->commit();,所以我不能执行任何其他数据库操作。当我在phpmyadmin中查看状态时,它显示即将到来的SQL查询状态是Waitingfortablemetalock,如何解决?谢谢/*InsertlogQuery*/functionputLog($query){global$mysqli,$ip,$browser,$dateLog,$isQuerySuccess;$

php - MySQLi stmt num_rows 返回 0

我在PHP中使用$stmt->num_rows时遇到问题,我不确定自己做错了什么。$stmt->num_rows在应该返回1时返回了0。查询确实起作用并在phpMyAdmin中执行时返回1个结果。任何帮助将不胜感激。publicfunctionget_login($username,$password){$query="SELECT`id`FROM`users`WHERE`username`=?AND`password`=?LIMIT1;";if($stmt=$this->prepare($query)){$stmt->bind_param('ss',$username,$passwo

php - PHP mysqli 可以在连接尝试时设置超时吗?

我用这条线连接到MySQL数据库,只是想知道是否有办法为连接尝试设置超时?$db=newmysqli($server,$usr,$passwd,$dbname); 最佳答案 是的,您可以为尝试使用mysqli从php程序连接到MySQL数据库明确指定超时。虽然有点毛茸茸。当您使用newmysqli()时,您使用的是可重用连接池。如果要设置超时或任何其他选项,则需要使用real_connect,如下所示:$timeout=30;/*thirtysecondsfortimeout*/$link=mysqli_init();$link->

php - Zend 数据库适配器 mysqli 或 PDO_MYSQL

我在application.ini中看到了几个执行此操作的代码示例resources.db.adapter=mysqliorresources.db.adapter=PDO_MYSQL两者之间的真正区别是什么?它会影响我的代码吗?我应该什么时候选择其中之一? 最佳答案 通过1.0版本,我为ZendFramework开发了很多Zend_Db组件。目标是适配器的功能相同,或者尽可能接近PHP扩展所支持的功能。同一组单元测试可以针对两个MySQL适配器运行,几乎没有区别。在性能方面,没有可衡量的差异。您会选择一个而不是另一个的原因,以及我

php - 无法使用 mysqli_connect 进行连接,但 mysql_connect 有效..?

我直接从我的托管服务提供商(1and1)那里获得了连接到MySQL的凭据。但是,当我尝试连接以下代码时:$db_hostname='localhost/tmp/mysql5.sock';$db_database='db543062602';$db_username='***********';$db_password='***********';$dbc=mysqli_connect($db_hostname,$db_username,$db_password,$db_database)ordie('ErrorconnectingtoMySQLserver');?>错误:Warning

php - PHP 中的 mysqli 类是否可以 100% 防止 sql 注入(inject)?

我看过很多关于mysqli的文章和问题,他们都声称它可以防止sql注入(inject)。但它是否万无一失,或者仍然有一些方法可以绕过它。我对跨站点脚本或网络钓鱼攻击不感兴趣,只对sql注入(inject)感兴趣。首先我应该说的是我正在使用准备好的语句。这就是我对mysqli的意思。如果我在没有任何字符串连接的情况下使用准备好的语句,那么它是否万无一失? 最佳答案 Butisitfoolproof,oristherestillsomewaytogetaroundit.不,你必须知道你在做什么。如果您使用绑定(bind)参数(MySql

php - 获取插入行的行数据(Mysql、PHP、mysqli)

当我插入它时,我需要取回一行的postid(自动递增PK)。我目前正在使用它来获取它//getpostidtoreturnif($result=$db->query('SELECTpostidFROMpostsWHEREtitle=\''.$title.'\'LIMIT1')){$row=$result->fetch_assoc();$json['postid']=$row['postid'];$result->free();其中$title是新插入的帖子的标题名称。是否有部分mysqli类允许我在一个查询中执行此操作?$db->query()是否会返回任何使这更简单、更安全的信息?我

php - mysqli_query - 返回值

我正在使用PHP函数mysqli_query运行SELECT查询。如果查询运行成功但查询找不到匹配项,mysqli_query返回什么? 最佳答案 根据manual:ReturnsFALSEonfailure.ForsuccessfulSELECT,SHOW,DESCRIBEorEXPLAINqueriesmysqli_query()willreturnamysqli_resultobject.Forothersuccessfulqueriesmysqli_query()willreturnTRUE.运行但未返回结果的查询仍被视为“