问题标签 [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 - 准备好的声明没有返回任何东西
我知道这个特定的查询有效,因为我用未经准备的程序方法对其进行了测试。这里是:
我意识到,由于我在 section 表中有一个 id 列作为索引,因此我也需要绑定它,因为上面有 php.net 上的声明(再次感谢 Bill)。
这是新代码:
再次感谢所有可以提供建议的人。(我很好奇:当以这种方式使用 OOP 样式的预准备语句时,我发现很难调试。例如,是否有一种简单的方法可以简单地查看实际使用的查询?)
如果我执行以下操作,就像一个简单粗暴的例子:
我的数据出现了,一切都很好。但是,如果我执行以下操作:
我认为这是正确的(当然,如果不是,请随意大喊),我什么也没得到。更重要的是,使用该代码,当我进行 html 验证(以防万一)时,我收到内部服务器警告(500),我认为这是 sql 代码的问题。我只是疯了吗?
php - PHP Mysqli fetch_assoc
PHP 的 MySQLi 特性很棒。
准备好的语句非常适合在查询中注入参数。
但是,如果您使用 Statements,您似乎无法再访问 fetch_assoc 功能。您必须手动绑定所有结果。这意味着我的 SQL 查询必须列出所有字段,然后我必须在获取结果时提前列出所有变量(使用 bind_result)。这会变得非常烦人和浪费时间。
有替代方案吗?
谢谢
php - PHP 和 MYSQLi - 使用循环绑定参数并存储在数组中?
下面是我用于从表中检索多个数据的函数的代码,但我想使用 bind_result($array[0],...,..) 根据我的字段数自动生成在查询中选择。
例如..
(应该自动生成 5 个值的 bind_result)帮助将不胜感激......谢谢
php - mysqli/php 中的意外重复
我在 Ubuntu 8.04 LAMP 上使用 MySQLi 和 PHP(5.2.4) MySQL(5.0.51a)。
相关的 Db 表如下:
我使用 MySQLi 连接到 Db,使用以下内容(请记住,我刚刚编辑了真实的用户名、密码和数据库名称,以支持占位符泛型):
这会按预期返回问题,print_r 如下:
我只是对最终得到八个结果而不是我期望的四个结果感到困惑。我得到了八个——因为任何了解数据库的人都会期望我使用 mysql 终端客户端还是 php 的 mysql-api。
创建重复项我做错了什么?
php - 使用 mysqli 提取自定义数据
我在 php 中为所有选择查询使用了一个函数,这样我就可以从我的数据库中动态检索数据.....所以请指出我正确的方向...谢谢
现在调用我正在使用的函数 ::>
该函数在 $result 中返回一个多维数组并将其存储在 $extract 中,具体取决于我要提取的数据。任何改进或其他建议将不胜感激......
php - 寻找一个带有描述的简单 mySQLi 类示例
我正在寻找一个在 PHP5 中扩展 mySQLi 类的类的简单但实用的示例。我也对存储过程感兴趣。基本上我需要的是一个实用和可用的类的例子。我通过例子学得最好,不幸的是我找不到任何网站或书籍似乎有一个非常可靠但简单的例子。我看到的所有示例都太复杂了,所以我无法理解,或者它们太简单了,我还不如立即实例化该类并在那里内联。如果有人可以向我提供这样的示例并解释发生的事情,那就太好了。我的长期目标是拥有一个我可以实例化的类来处理数据库的身份验证,然后获取我的 SQL 语句并以变量的形式提供输出。
如果有人愿意花时间帮助我,将不胜感激!,谢谢
php - PHP Mysqli 准备不创建语句对象
我正在使用带有准备好的语句的 php mysqli 扩展,但是在一个查询中它没有创建查询对象。
这是代码:
问题:
if($query = $this->mysqli->connection->prepare($sqlq))
The行if()
返回 false,因此没有创建$query
对象,也没有执行 if 中的任何代码。
echo $sqlq;
回报:
“SELECT id,name FROM productcategories JOIN products ON productcategories.productid = products.id WHERE categoryid=?OR categoryid=?OR categoryid=?OR categoryid=?OR categoryid=?OR categoryid=?”
我看不出有什么问题。
任何帮助将不胜感激,
谢谢,尼科
php - mysqli_real_escape_string 和准备好的语句?
应该是一个足够简单的问题:
如果我使用 mysqli 准备好的语句,我还需要使用mysqli_real_escape_string()
吗?
这是必要的,还是一个好主意?
谢谢,尼科
php - MySQLi 相对于 MySQL 的优势
与 MySQL 相比,使用 MySQLi 的优势是什么?
php - 插入表时,我可以获得自动递增的主索引的值吗?
我正在向表中插入一行,并希望获取自动递增的主索引的值。
主索引是表中唯一的唯一值,因此我不想执行类似“SELECT [primary index] FROM [table] WHERE [the columns = the data I just inserted]”之类的操作以防止歧义。我也不想选择最后一行,因为我的 INSERT 和 SELECT 语句之间可能已插入一行。
我可以插入一个空行,选择主索引并用数据更新该行,但这似乎是一个非常丑陋的黑客行为。这让我相信他们必须是一种方法来获取您刚刚通过 mysqli API 插入的行的主索引,因为我认为这将是非常普遍的事情。
有人可以启发我吗?