参考-此错误在 PHP 中意味着什么?

这是怎麽? 这是一些关于警告、错误和注意事项的答案, 您在编程 PHP 时可能会遇到这些问题, 并且不知道如何修复。这也是一个社区 Wiki, 因此邀请每个人参与添加和维护此列表。 为什么会这样? 像"标头已经发送" 或 [https://stackoverflow.com/questions/12769982/reference-what-does-this-error-mean-in-php/12770075#12770075] "调用非对象的成员" [https://stackoverflow.com/questions/12769982/reference-what-does-this-error-mean-in-php/12769983#12769983] 这样的问题经常会在堆栈溢出上出现。这些问题的根源总是一样的。因此, 这些问题的答案通常会重复这些问题, 然后向 op 显示在他的特殊情况下要改变哪一行。这些答案不会为网站添加任何值, 因为它们仅适用于 OP 的特定代码。具有相同错误的其他用户无法轻松地从中读取解决方案, 因为它们过于本地化。这是可悲的, 因为一旦你了解了根本原因, 修复错误 ……

共30个回答, 标签: php mysql oop debugging warnings
mysql _ 拿给数组 ()/mysql_fetch_assoc ()/mysql_fetch_row ()/mysql_num_rows 等希望参数1是资源或结果

我试图从 MySQL 表中选择数据, 但我收到以下错误消息之一: > mysql _ 予数组 () 期望参数1是资源, 布尔给定的布尔值 或 > mysqli _ 予数组 () 期望参数1为 mysqli _ 结果, 布尔值给出 或 > 调用布尔/非对象上的成员函数获取 _ array () 这是我的代码: $username = $_POST['username']; $password = $_POST['password']; $result = mysql_query('SELECT * FROM Users WHERE UserName LIKE $username'); while($row = mysql_fetch_array($result)) { echo $row['FirstName']; } 这同样适用于代码, 如 $result = mysqli_query($mysqli, 'SELECT ...'); // mysqli_fetch_array() expects parameter 1 to be mysqli_result, boole ……

共30个回答,已解决, 标签: php mysql
如何防止 PHP 中的 SQL 注入?

如果在不修改的情况下将用户输入插入 SQL 查询, 则应用程序就容易受到sql 注入的影响 [https://stackoverflow.com/a/332367/], 如下面的示例所示: $unsafe_variable = $_POST['user_input']; mysql_query("INSERT INTO `table` (`column`) VALUES ('$unsafe_variable')"); 这是因为用户可以输入类似的内容 value'); DROP TABLE table;-- , 查询将变为: INSERT INTO `table` (`column`) VALUES('value'); DROP TABLE table;--') 可以做些什么来防止这种情况发生? ……

共28个回答,已解决, 标签: php mysql sql security sql-injection
为什么我不能在 PHP 中使用 mysql _ * 函数?

一个人不应该使用函数的技术原因是什么 mysql_* ?(例如 mysql_query() , mysql_connect() 或 mysql_real_escape_string() )? 我为什么要使用其他的东西, 即使他们在我的网站上工作? 如果他们不在我的网站上工作, 为什么我得到错误, 如 > 警告: mysql _ connect (): 没有这样的文件或目录 ……

共15个回答,已解决, 标签: php mysql database
UTF-8 一路通过

我正在设置一个新服务器, 并希望在我的 web 应用程序中完全支持 UTF-8。我过去曾在现有的服务器上尝试过, 最终似乎总是不得不回到 iso-8859-1。 我需要在哪里设置编码字符集?我知道我需要配置 Apache、MySQL 和 PHP 来执行此操作-是否有一些标准的检查表, 我可以遵循, 或者可能是在发生不匹配的地方进行故障排除? 这适用于运行 MySQL 5、PHP、5和 Apache 2 的新 linux 服务器。 ……

共14个回答,已解决, 标签: php mysql linux apache utf-8
何时在 MySQL 中使用单引号、双引号和回刻度

我正在尝试学习编写查询的最佳方法。我也明白保持一致的重要性。到目前为止, 我已经随机使用单引号, 双引号, 和回刻度没有任何真正的想法。 例子: $query = 'INSERT INTO table (id, col1, col2) VALUES (NULL, val1, val2)'; 此外, 在上面的示例中, 考虑这 "table," "col[n]," and "val[n]" 可能是变量。 这方面的标准是什么?你是做什么工作的? 我在这里阅读类似问题的答案已经有大约 2 0分钟了, 但这个问题似乎没有确切的答案。 ……

共12个回答,已解决, 标签: mysql sql quotes
让父母和孩子的树文件夹结构在我的 sql< 8 and no CTEs 8="" and="" no=""></ 8 and no CTEs>

我有一个文件夹表, 它连接到一个 id parent_id , 关系上的自身: CREATE TABLE folders ( id int(10) unsigned NOT NULL AUTO_INCREMENT, title nvarchar(255) NOT NULL, parent_id int(10) unsigned DEFAULT NULL, PRIMARY KEY (id) ); INSERT INTO folders(id, title, parent_id) VALUES(1, 'root', null); INSERT INTO folders(id, title, parent_id) values(2, 'one', 1); INSERT INTO folders(id, title, parent_id) values(3, 'target', 2); INSERT INTO folders(id, title, parent_id) values(4, 'child one', 3); INSERT INTO folders(id, title, parent_ ……

共9个回答, 标签: mysql sql hierarchical-data
围绕 mysql _ real _ 回避 _ string () 的 SQL 注入

即使在使用函数时, 是否也存在 SQL 注入的可能性 mysql_real_escape_string() ? 请考虑此示例情况。SQL 是在 PHP 中构造的, 如下所示: $login = mysql_real_escape_string(GetFromPost('login')); $password = mysql_real_escape_string(GetFromPost('password')); $sql = "SELECT * FROM table WHERE login='$login' AND password='$password'"; 我听过很多人对我说, 这样的代码仍然很危险, 即使使用 mysql_real_escape_string() 了功能也有可能被破解。但我想不出有什么可能的利用? 像这样的经典注射: aaa' OR 1=1 -- 不工作。 你知道有什么可能的注入可以通过上面的 PHP 代码吗? ……

共4个回答,已解决, 标签: php mysql sql security sql-injection
计数 (*) 或最大 (id)-哪个更快?

我有一个 web 服务器, 我已经在上面实现了自己的邮件系统。我正处于需要创建 API 的阶段, 该 api 检查用户是否有新消息。 我的数据库表很简单: ID - Auto Increment, Primary Key (Bigint) Sender - Varchar (32) // Foreign Key to UserID hash from Users DB Table Recipient - Varchar (32) // Foreign Key to UserID hash from Users DB Table Message - Varchar (256) //UTF8 BIN 我正在考虑制作一个 API, 它将估计给定用户是否有新的消息。我正在考虑使用以下方法之一: A)选择 count(*) 发件人或收件人是我的邮件。 (如果此数字 > 以前的数字, 我有一个新的消息) B)选择 max(ID) 以发件人或收件人为我的邮件。 (如果最大值 (ID) 比以前的数字 >, 我有一条新消息) 我的问题是: 我可以以某种方式计算什么方法会消耗较少的服务器资源吗?或者有什么文章吗?也 ……

共4个回答,已解决, 标签: php mysql performance
为什么我得到尝试获取非对象的属性时, 显示我的数据?

我正在创建一个用户配置文件, 我正在尝试 TITRE_ANNONCE 在选择 div 中显示, 但我收到错误: > 试图获取非对象的属性 这是我的表格: @foreach($user as $annonce) {{$annonce->TITRE_ANNONCE}} @endforeach 与我的控制器: public function voirprofile($id) { $user = DB::table('users')-> join('article', 'article.id', '=', 'users.id')-> join('annonce', 'annonce.ID_ARTICLE', '=', 'article.ID_ARTICLE')-> where('users.id', $id)-> get(); return view('voirprofile') - > with('user', $user); } $user 有用户信息与所 ……

共2个回答, 标签: mysql laravel
在使用 MySQL 的 Visual Studio 2017 上的类未注册错误

我正在将我的独立 VB.NET 开发的 Windows Forms 应用程序从 SQL 迁移到 MySQL,同时我正在使用在线数据库。下面是场景。 1. 应用程序是在 Visual Studio 2017 VB.NET 中开发的,是 Windows Forms 应用程序。 2. 我的数据库托管在 Hostinger 上。 现在很明显,如果我想从 VS 连接到 MySQL,我需要两个组件。 1. Visual Studio 的 MySQL 2. MySQL 连接器 问题开始了,我尝试了这两个组件的不同版本,但是仍然出现了以下错误。 enter image description here [https://i.stack.imgur.com/bFkFa.png] [https://i.stack.imgur.com/bFkFa.png] 现在,根据在线论坛和这里回答的问题,当计算机上没有安装软件组件时,会出现此错误。在这种情况下,我使用 MySQL 引用,但是对于未安装的 VS,我使用 MySQL 连接器或 MySQL。但事实并非如此。我已经安装了这两 ……

函数仅由一个线程执行, 而不是多个

我编写了一个巨蟒脚本, 将市场数据导入到 MariaDB 数据库中。为了加快导入速度, 我决定使用模块线程。因此, 首先, 函数使用 urls 填充队列, 从中下载数据并将其导入到我的数据库中。不幸的是, 导入函数似乎只由一个线程而不是许多线程处理。 import queue from threading import Thread num_threads = 4 threads = [] urls = queue.Queue() def create_url(): ... getlist of items ... for row in item_list: url = 'https://someurl=' + str(row[0]) urls.put(url) return urls def import_mo(urls): station_id = 60003760 print(worker.getName()) try: mariadb_connection = mariadb.connec ……

共1个回答, 标签: python mysql multithreading queue
如果 (rs.next () 总是不工作,就去别的地方

我在一个带有用户登录、管理员登录分机的 exame 系统上工作..当 chack 如果输入的用户名为 ex 时,如果它已经在数据库中,并且已经创建了它,它就会发送报告!! 试试 { //Class.forName ("com.mysql.jdbc.Driver"); Connection con = (Connection) DriverManager.getConnection (“jdbc: mysql://localhost: 3306/big _ project 3” 、 “root” 、 “”); //Imporrrrrrrrrrrrrrrrrrrrrrrtant 字符串 selectquery = "从 uesrs 中选择 count (*),其中用户名 = '" 用户名 ",密码 ='" 密码 ""; 语句 stat = con.createStatement (); 系统输出。 println (选择查询); 结果集 rs=stat.exe cuteQuery (selectquery); 系统。输出。 println (rs。next ()); 如果 (rs.next () = = tru ……

共1个回答, 标签: java mysql oop
自动生成模型并运行迁移 SQL 语法错误

我正在用 MySQL 构建一个新的 NodeJS 应用程序。我需要使用现有的数据库模式。我有一个加载到数据库中的 mysql 转储文件 (在 docker 容器中)。我试图自动生成模型和迁移,然后成功运行迁移。我能够生成模型和迁移,但是在运行生成的迁移时出现 SQL 语法错误。 以下是相关版本: Node10-alpine "Mysql": "2.17.1", “Mysql2”: “1.6.5”, “续集”: “5.8.5”, “自动排序”: “^ 0.4.29”, “自动迁移”: “1.0.3” 我用了自动拼接 [https://www.npmjs.com/package/sequelize-auto]模块自动生成模型。有效。 顺序化-自动 o “./models”-d 顺序 _ 自动 _ test-h 本地主机-u 用户名-p 5432-x 用户名 然后,我尝试使用顺序自动迁移模块生成迁移,然后自动运行它们。 生成初始迁移文件是有效的。 节点。自动迁移/bin/makemigration-name 然而,在运行实际迁移时,会出现语法错误。 节点。/Node_modules/seq ……

共1个回答, 标签: mysql node.js model migration sequelize.js
如何使用 AND 和 OR 条件创建 php 标记搜索字段?

我正在尝试创建一个搜索字段, 人们可以在其中使用保存在我们数据库 (ajax) 中的标记进行搜索。问题是, 我希望用户能够使用内容的标记进行搜索, 其中的内容必须附加包含用于搜索的所有标记的标记。所以, 让我们假设我搜索 ' 宝马红色 ', 我只想显示内容与标签 "宝马" 和 ' 红色 ' 附加到它。所以没有两个标签中只有一个的内容。 此外, 用户可以搜索可选的标记, 因此假设用户搜索 "红色", 结果应包含标记 "红色" 或 "黄色", 其中也与 OST 搜索字段匹配。通过这样做, 你会得到一个非常具体的搜索。 在这里的照片中, 我包括了搜索字段应该如何工作的设计, 应该更清楚我想要创建的内容。 https://i.imgur.com/x1FrRpP.jpg [https://i.imgur.com/x1FrRpP.jpg] 我也写了一些代码, 但正如你所看到的, 它没有按照我想要的方式工作。 知道我怎么解决这个问题吗? Search Keywords: MUST Optional if(!empty($_POST)) { $aMust = ex ……

共0个回答, 标签: php mysql ajax search tags
Python 中的新功能。请查看我的代码,并给我一些反馈

我刚开始使用 Python。你能查看一下我的代码吗?数据库中有两个 mysql 表many, 1-st owners 2-nd pets. I read names of pets and owners from two different xlsx file and populate it in tables. The job is done by two classes. If i run two classes one after other it works(comment last line or line above). If I run both of them it give me some error. (First class completed successfully ). Probably I don't call properly. I'm not sure is it good practice this : pet_name_list = Generate_pet_names.prepare_pet_name_list() inside second class. Do I u ……

共0个回答, 标签: python mysql
根据特定列的值删除行

如果在特定列中的值为 1, 则要删除一行数据。 例如, 我有一个名为 "表 1" 的表, 它有3列: "ID"、"值" 和 "Process"。我将数据一致地记录到此表中 ID | Value | Process 1 | 30 | 0 2 | 24 | 0 3 | 26 | 1 4 | 34 | 0 当1被记录为 "处理" 时, 此行是否会自动被删除? ……

共0个回答, 标签: mysql
Mysql-字符串 A、B 和 B, A 应该是相同的

我有一张像下面这样的桌子 taskId taskList 1 A, B 2 C, F, H 当我质疑的时候 select count(*) from task_list where taskList='A, B'; 执行部分: 1 但因为 select count(*) from task_list where taskList='B, A'; OP: 0 我期待 ' A, B ' 和 ' B, A ' 是一样的。 如何实现此目的? ……

共0个回答, 标签: mysql
权责发生制会计制度如何设计

我们目前正在从以现金为基础的会计制度向以权责发生制为基础的会计制度转变。设计新的权责发生制需要找到任何需要考虑的点 我们计划了一个计划好的工作,每天运行,计算应收账款,并进入系统。系统采用复式录入方式 我们已经遵循了数据库设计指南复式记账系统的数据库模式设计? [https://stackoverflow.com/questions/2494343/database-schema-design-for-a-double-entry-accounting-system] 所以需要知道如何从编码端运行累积过程 ……

共0个回答, 标签: java mysql
从输入转义的 SQL 特殊字符

在我的数据库中, 我有一些文件路径, 在某个时候我需要更新部分路径。如何在 \ruba 更新数据时处理前的特殊字符 \rubla 。 \r是特殊的字符 \rubla从 c# 输入参数到 SQL 查询 Sql: update table set Location = CONCAT('gabiluca.at.gmail.com\folder', substring(Location, length('gabiluca.at.gmail.com\director') + 1)) where Location like 'gabiluca.at.gmail.com\\\\folder%' \\\\转换为\ 简单的情况下: 在 mysql 表中, 窗口相对路径存储在名为 "位置" 的列中。 Id Name Location 38 MuseScore 3.lnk gabiluca.at.gmail.com 39 redenumit gabiluca.at.gmail.com 40 interior gabiluca.at.gmail. ……

共0个回答, 标签: c# mysql sql