草庐IT

mysqli_stmt_num_rows

全部标签

关于mysqli的PHP继承

我创建了一个名为Database的类。classDatabaseextendsmysqli{publicfunction__construct(){parent::__construct();$mysqli=newmysqli(DBHOST,DBUSER,DBPASSWORD,DBDATABASE);if(mysqli_connect_errno()){printf("Connectfailed:%s\n",mysqli_connect_error());exit();}}}还有一个名为Model的类,它扩展了DatabaseclassModel{function__construct

php - array_walk_recursive 和 mysqli::real_escape_string 出错

我的mysql连接使用面向对象的风格,但是如果我这样写:array_walk_recursive($_POST,array($mysqli,'real_escape_string'));我收到这个错误:Warning:mysqli::real_escape_string()expectsexactly1parameter,2given事实是mysqli::escape_string接受只有1个参数:stringmysqli::escape_string(string$escapestr)我写:$VAR=array();$VAR=$_POST;functionescape_string(

php - 处理 mysqli 准备好的语句时获取的替代方法?

我有以下代码使用准备好的语句执行MySQL查询:$selectStatement="SELECT".implode(",",$allFields);//catselectw/allFields$stmnt=$mysqli->prepare($selectStatement."FROMMusiciansWHEREname=?");$stmnt->bind_param('s',$name);$stmnt.execute();此时,我读过的大部分内容都告诉我,我应该在$stmnt上使用bind_result(),然后使用fetch()。但是,我宁愿得到一个用值填充的数组,而不是像fetch(

php - 使用 Mysqli : Is there a way to not have to connect to the database every single query?

我刚刚开始使用MYSQLi而不是MYSQL,我遇到了一个巨大的烦恼:每次查询等都必须连接到数据库。为什么我现在必须在旧的MYSQL中不这样做?或者有没有办法不必这样做?几个例子:MySQL:mysql_query("SELECTidFROMtable");现在在Mysqli中我总是要做:mysqli_query($db,"SELECTidFROMtable");我还必须这样做:mysqli_last_id($db);和mysqli_real_escape_string($db);我整晚都在试图找到这个问题的答案,但我找不到任何东西。 最佳答案

mysqli 准备语句日期和子句之间

$stmt=$mysqli->prepare("SELECTvinFROMjobsWHEREoutbetween?and?");$stmt->bind_param('ss',$startday,$endday);$startday='2013-01-01';$endday='2013-12-31';$stmt->execute();$stmt->store_result();$stmt->bind_result($vin);echo$vin;如果我删除语句之间的部分,上面的代码会抛出这个错误,查询工作。我尝试将列名称括在方括号中,但这也终止了查询,所以我不得不删除它们。似乎问题出在be

PHP 将 mysql 转换为 mysqli

这个问题在这里已经有了答案:CanImixMySQLAPIsinPHP?(4个答案)关闭3年前。以下脚本运行良好:$host="localhost";//Hostname$username="";//Mysqlusername$password="";//Mysqlpassword$db_name="test";//Databasename$tbl_name="members";//Tablename//Connecttoserverandselectdatabse.mysql_connect("$host","$username","$password")ordie("cannotc

php - 使用 MAMP 在 Mac OS 中通过终端连接到 MYSQLi

我正在尝试通过Mac中的终端运行我的PHP脚本。当我尝试运行脚本时,出现此错误:警告:mysqli_connect():(HY000/2002):没有那个文件或目录这就是我尝试连接的方式:mysqli_connect('localhost','root','root','my_db');我还尝试使用主机进行连接:127.0.0.1而不是本地主机,然后出现此错误:警告:mysqli_connect():(HY000/2002):连接被拒绝从我在网上读到的内容来看,它可能与mysql套接字有关,但无论我如何尝试使它正常工作都无济于事。我什至尝试使用以下主机进行连接::/Applicatio

php在stmt准备和执行语句后获取结果

我正在尝试在SQL中执行搜索查询,使用AJAX将div标记更改为搜索结果。但是,我无法使用stmt绑定(bind)参数(为了安全)运行查询。通过打印变量,我发现所有部分都在工作,但我认为参数没有正确搜索,或者get_result使用不正确。我这么说的原因是,在while循环中打印时,输出总是“()”。顺便说一句,它从中提取的表有20多列请看下面的代码:prepare("SELECT*FROMContactsWHEREfirstGroup=?ORsecondGroup=?ORthirdGroup=?");$stmt->bind_param("sss",$q,$q,$q);if($stmt

mysql - SQL 在每个 SELECT 请求中获取 ROW_NUMBER 和 COUNT

我正在构建一个网格机制,我需要从数据库中检索数据(总计或找到的记录),只检索这些记录的范围,其中包含一个row_number。我使用SqlServer进行测试,但我也需要在Oracle和MySql上支持它。这就是我正在尝试的,但我无法让它工作:SELECT*FROM(SELECTROW_NUMBER()ASRN,COUNT(*)ASTOTALCN,Id,Name,PhoneFROMMyTableWHEREDeleted='F')WHERERN>100ANDRN思路是:MyTable->numberofrecords:1000SelectId,Name,PhonefromMyTablew

php - "SELECT"命令的准备语句失败,在 PHP 中使用 mysqli

我已经能够使用mysqli(在PHP中)执行多个准备好的语句。但是,由于某种原因,当我尝试运行“SELECT”命令时,准备好的语句总是遇到错误。例如,以下行将成功:$stmt=$mysqli->prepare("UPDATEeventsSETcategory='m'WHEREid=(?)");但是,以下行将失败:$stmt=$mysqli->prepare("SELECT*FROMeventsWHEREid=(?)");当我说失败时,我的意思是接下来的三行将为UPDATE命令返回1(表示更改了一行)...$stmt->bind_param('i',$id);$stmt->execute