问题标签 [mysqli]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - mysqli->error: 是只针对最后一个查询,还是针对查询组的最后一个错误?
我是 mysqli 的新手,并试图确认如果我像下面这样,errno 将设置为最后一个错误(如果有),而不是最后一个查询的错误。
这是一种体面的做法,还是我应该检查每个查询之间的错误?
谢谢!
php - MySQL 准备好的查询是否为每会话一次查询提供了性能优势?
根据文档,如果您多次运行查询,准备好的查询会提供显着的性能优势,因为 MySQL 服务器解析查询的开销只发生一次。我想知道那里的“多次”到底是什么意思。
即,假设您有一个网页运行一次查询。现在假设该页面每秒被调用 50 次。从性能的角度来看,prepare() 查询是否更有意义(因此需要两次往返数据库服务器;一次准备查询,一次运行查询)或仅正常发送查询(只需要一次往返) ? MySQL 和/或 PHP mysqli 驱动程序是否足够聪明,可以意识到在之前的调用中何时准备()查询?
php - 在 mysqli 准备好的语句中使用空值
在 mysqli 准备好的语句中,NULL 变成 ''(在字符串的情况下)或 0(在整数的情况下)。我想将其存储为真正的 NULL。有没有办法做到这一点?
php - MySQLi 准备好的语句和 REPLACE INTO
我必须遵循代码:
http://www.nomorepasting.com/getpaste.php?pasteid=22987
如果PHPSESSID
不在表中,则REPLACE INTO
查询工作正常,但是如果PHPSESSID
存在,则执行调用成功,但 sqlstate 设置为“HY000”,这不是很有帮助,$_mysqli_session_write->errno
并且
$_mysqli_session_write->error
都是空的,并且数据列不会更新。
我相当确定问题出在我的脚本中,因为REPLACE INTO
无论表中是否存在手动执行 from mysql 都可以正常工作PHPSESSID
。
php - 确保 MySQL 连接在 PHP 函数中有效
我有以下形式的代码:
这种(类型的)代码不起作用,因为 doSomething() 没有与数据库的连接。谁能解释为什么不?我在调用 doSomething()之前创建了 $con 连接。那么为什么这个函数表现得好像没有连接一样呢?
除了将连接传递给 doSomething($con) 之类的函数之外,有没有办法解决这个问题?
php - 将 MySQL 查询限制为偶数个结果
我有一些 PHP 代码,我需要从 MySQL 数据库返回偶数个结果。我正在使用 mysqli 扩展来执行我的查询。
我的代码目前大致是这样的:
如您所见,我将查询限制为 6 行,但在某些情况下,返回的行数会更少。如果只返回 3 行,我想扔掉最后一行,只保留 2 行。
如何在 MySQL 查询或 MySQLi 中执行此操作?
php - 绑定布尔值的bind_param问题
我mysqli_stmt::bind_param
在 PHP5 中使用绑定布尔值时遇到问题。
SQL 查询如下:
'read' 是一个 tinyint,0 或 1,因为我在使用 mysqli 时遇到了一些问题。所以我在 bind_param 中列出的类型是:
我也尝试过 'sdsb' 和 'sdss' 但似乎没有任何效果,而且我总是收到以下信息:
警告:mysqli_stmt::bind_param():变量数与准备语句中的参数数不匹配
当我删除语句中的读取字段时,一切正常。我已经没有这个想法了。当然 bind_param 与布尔值一起使用?
php - mysqli::real_escape_string 的对应物?
带斜线()?那太蹩脚了,所以4.0。什么是 mysqli::real_escape_string 的 5.0 版本,它去除了为 SQL 查询添加的所有斜杠?
还有一些问题:
尝试更新记录并在文本字段中添加单引号,结果 phpMyAdmin 用单引号而不是斜杠转义字符串 - 例如,单引号被转义为 ''(2 个单引号)而不是 \' - 什么功能phpMyAdmin 使用还是它自己的?那么,mysql 支持两种转义字符串的方法,即斜杠和单引号?
我是否总是必须取消从 mysql 中选择的字符串?因为'你知道它在插入时被削减了。但我认为我不必这样做。
任何想法,谢谢!
php - 从 mysql 转换为 mysqli - 输出变量
我一直在 PHP 中使用 mysql api,现在正在转换为 mysqli 以提高安全性。我看到的示例语法使用 printf,我想知道这是否有必要。目前我使用回声,像这样:
由于使用 mysqli 您必须将变量绑定到结果,所以我这样做了:
并且想知道我是否可以简单地将我对 $row 的引用替换为绑定变量,例如:
这种方法是否存在任何安全问题,或者是否可以
php - php给出一个空白页,没有错误
我有一个 AJAX 应用程序的以下部分,它没有给出任何错误,但屏幕上也没有显示任何内容,所以我不确定问题出在哪里。使用 ?cmd&id=1 直接从浏览器调用此页面应该返回,或者甚至在没有 ?cmd 的情况下调用它应该返回 cmd 错误消息。
编辑:添加了测试用例:我确实收到了 cmd 错误消息,但是当我通过 &id=1(1 是一个有效的 id)时,没有任何 html 被返回,查看源代码是完全空白的。我是否错误地使用了回声或类似的东西?
编辑2:添加回声作为第一行:第一个回声无论如何都看不到
编辑3:回到旧版本并再次进行所有更改后,我现在在使用有效的 cmd 和 id 参数调用时得到测试字符集输出。我使用的代码与下面粘贴的代码相同。
编码:
我为间距道歉,但是当我按下代码按钮时它会自动发生。