草庐IT

Mysqli_result

全部标签

php - 参数数组MySQLi的动态绑定(bind)

我正在为我的网站构建一个搜索功能,用户可以使用3个参数进行搜索。用户可以选择输入所有3个来过滤表格,或者根本不输入并接收整个表格。我弄清楚了如何根据用户输入的内容动态构建查询,但我无法使用正确数量的参数和正确的顺序调用bind_params()。代码:$sql="SELECTposition,rank,fullname,phonenumber,email,divisionFROM`table`WHERE1=1";if(!empty($_POST['fname'])){$firstname=$_POST['fname'];$sql.="AND`fullname`LIKE'%?%'";}i

php - 构建 mysqli 查询?

如果我有查询selectusers.user_id,users.fname,users.lname,bios.bio,groups.groupidfromusersLEFTJOINbiosonusers.user_id=bios.userid然后我想根据条件添加另一个表,然后在末尾添加一个where语句。问题是因为当我绑定(bind)参数时它说“变量数与准备语句中的变量数不匹配”。我将如何解决这个问题?干杯。示例:$info="selectusers.user_id,users.fname,users.lname,bios.bio,groups.groupidfromusersLEFT

php - 持久连接 : MySQL FOUND_ROWS() results

作为背景知识,在MySQL中,通过SQL_CALC_FOUND_ROWS标志和FOUND_ROWS()函数,MySQL允许您检索如果SELECT不使用LIMIT将返回的总行数,而无需发出第二个繁重的查询:$query="SELECTSQL_CALC_FOUND_ROWS*frommoviesWHERE....LIMIT20";$res1=$db->query($query);$numrows=$db->query('SELECTFOUND_ROWS()')->fetchColumn();这对于分页很有用。假设您使用的是持久连接:try{$db=newPDO('mysql:host=lo

php - Mysqli 总是返回连接成功

在我所有的php页面上,我都包含了以下数据库连接代码无论我做什么(例如输入错误的密码或输入错误的文件路径),它总是回显“成功”。我已经尝试使用try/catch来处理错误,在新的mysqli前面放置一个@,使用面向对象的If($mysqli->connect_error)。我做什么都不会返回失败当我放echo'Success...'.$mysqli->host_info."\n";我得到的不是echosuccessSuccess...LocalhostviaUNIXsocket谁能告诉我为什么我总是收到这个虚假的成功消息?编辑:我最终要寻找的不是我用于开发的每条php错误消息(即ini

PHP Pthreads - 使用 mysqli

我第一次尝试在我的Web应用程序中使用pthreads。我有pthreads为简单的测试用例工作,但是我无法让pthreads中的mysql查询工作。这是我的php文件:classSqlThreadextendsThread{private$dbc;public$log;public$return;publicfunction__construct(){$this->dbc=mysqli_connect("localhost","root","rootpassword","my_database");$this->log="(".__LINE__.")constructfinished

php - 成功插入单行后 $mysqli->info 为空

在使用单个插入语句插入多行后,我从$mysqli->info得到了预期的行为。var_dump($mysqli->info);string'Records:1246Duplicates:0Warnings:0'(length=41)插入一行后,$mysqli->info返回NULLvar_dump($mysqli->info);nullvar_dump($mysqli->affected_rows);int1mysqli_info()返回空字符串var_dump(mysqli_info($mysqli))string''(length=0)我找不到任何关于此行为的引用资料!我希望在像这

php - mysqli_fetch_row 不返回结果,但 mysqli_fetch_assoc 返回结果

我正在为一项作业编写一个简单的php页面,其中一个标准是同时使用mysqli_fetch_assoc和mysqli_fetch_row。我对两者使用相同的查询:当我在我的数据库中运行此查询时,它按预期返回3行。在我的网页中,我首先使用mysqli_fetch_assoc($result),它呈现了一个包含预期信息的无序列表。然后我继续使用mysqli_fetch_row($result)来显示更多信息,但是第二个while循环不产生任何表数据(只是第th个标签的内容)。ThePlayers";}?>TheStatsPlayerBattingAvgHomerunsRBIs//DATABE

php - 如果在循环中使用 MySQLi 准备语句,我什么时候调用 bind_param?

我正在尝试学习如何在MySQLi中使用准备好的语句来插入数据。尽管准备好的语句因其重复高效地执行类似语句的能力而受到称赞,但我似乎找不到使用MySQLi在循环中执行多个语句的示例。我特别对以下内容感到困惑:是在我的循环之前还是在我的循环中调用bind_param是否在调用bind_param之前或之后为我的变量赋值大多数关于预处理语句的教程都使用PDO。使用PDO,可以将一组参数值传递给execute,从而无需调用bindParam。MySQLi不是这种情况。PHP手册mysqli_prepare条目有一个显示以下操作顺序的示例:为变量赋值准备声明绑定(bind)变量执行关闭根据以上判

php - 从 mysqli_query 获取成功/失败响应

我正在从用户那里收集信息,然后将它们添加到表格中。$insert="INSERTINTOjos_activeagents(RINGPHONE,AGENTUID,FNAME,LNAME)VALUES('(618)717-2054','".$result['AGTBRDIDMM']."','".$result['AGTFNAME']."','".$result['AGTLNAME']."')";$set=mysqli_query($link,$insert);AGENTUID是唯一键。如果用户尝试使用重复的唯一key提交,我会收到错误消息(当然)。现在,我如何知道是否以及何时发生错误,然后

php - 即使在选择查询之后,mysqli_insert_id 仍然返回一个值

我有一个函数没有按照我的预期运行。它的目的是为选择查询返回一个行数组,或者为插入查询返回插入id。由于某种原因,如果插入查询后跟选择查询,则测试查询是否为插入的函数部分会失败,因为inesrt_id仍会返回插入行的ID。我可以围绕这个进行编程,但我真的很想了解为什么会这样。我的理解是,如果最近的查询是select,那么应该没有insertid。我是mysqli的新手,所以当我认为它确实如此时,查询可能并没有真正“结束”,所以新的选择算作同一查询的一部分?如果我在每个查询上重新创建连接,我可以让它正常工作,但这不切实际。这是查询功能的代码。publicfunction__construc