我正在尝试运行PHPUnit来对WordPress插件进行单元测试,但标题中的错误仍然显示出来.
我使用WP-CLI来设置单元测试,但是当我尝试运行它时,WP-CLI也会抛出类似的错误.
我使用MAMP来运行数据库.
我将WP-CLI和PHPUnit设置为phars,在〜/ .bash-profile中设置别名,并使用OS X提供的默认"php"运行.更改此项,并使用最新的PHP版本运行WP-CLI和PHPUnit由MAMP提供的固定WP-CLI(它正在运行并连接到数据库就好了)但PHPUnit仍然抛出相同的错误.
我已经尝试编辑wp-config.php文件,并将主机设置为":/ path/to/mamp/mysql.socket","localhost:/path/to/mamp/mysql.socket"和"127.0.0.1" ",没有一个帮助.
我完全陷入困境,不知道下一步该尝试什么.
我已经在这一个超过一个小时了,我可以连接到我的数据库和所有(没有给出任何错误)但是当我尝试使用"mysql_query($ query);"时我收到以下错误
Call to undefined function mysql_query()
Run Code Online (Sandbox Code Playgroud)
我已经尝试过启用:
extension=php_mysql.dll
extension=php_mysqli.dll
Run Code Online (Sandbox Code Playgroud)
而且我补充说:
extension_dir = "ext"
extension=php_mysql.dll
Run Code Online (Sandbox Code Playgroud)
在导入列表的末尾.
在我所做的每一次更改之间,我重新启动了exampp中的所有进程,并且在我单独尝试它的每个解决方案之后仍然会出现这个恼人的错误.
我试过在网上看,但唯一类似于我的错误是:
Call to undefined function mysql_connect()
Run Code Online (Sandbox Code Playgroud)
在任何一点上我都没有任何问题,从未见过它.
我在这里问它是因为我在谷歌搜索结果上发了垃圾邮件,上面的问题; 不是我拥有的那个.
如果有人可以帮助我,我会很高兴,我在网上找到的教程显示了我写的完全相同的代码.
我在php中有以下脚本登录到mysql
$db_host="localhost";
$db_user="root";
$db_pass="123";
$dbc=mysql_connect($db_host,$db_user,$db_pass) OR DIE (mysql_error());
$dbs=mysql_select_db($db_name) OR DIE (mysql_error());
Run Code Online (Sandbox Code Playgroud)
这个脚本工作正常,现在我重新安装操作系统现在我有Windows 7和iis7和PHP版本5.3.2和mysql服务器5.1但现在这个脚本不工作并采取日志时间执行.
谢谢
我是首发.
我想知道如果我们不关闭MySQL连接会发生什么.
1-如果我们不关闭它们,是否可以打开多个数据库?我的意思是我们可以同时打开多个数据库吗?
2-关闭数据库是否会提高速度?
3-是否需要关闭数据库或它是可选的?
看看这段代码.我不使用"mysql_close()"所以我不会在每次请求后关闭数据库.这个PHP页面有很多请求.也许每分钟50000.我想知道关闭数据库是否需要此代码或没有?
<?php
//Include the file that lets us to connect to the database.
include("database/connection.php");
//Call "connect" function to connect to the database.
connect("database", "localhost", "root", "", "user");
//The GPRS module send a string to this site by GET method. The GPRS user a variable named variable to send the string with.
$received_string = $_GET["variable"];
//Seprates data in an array.
$array_GPRS_data = explode(",", $received_string);
//we need to remove the first letter.
$array_GPRS_data[9] = substr($array_GPRS_data[9], 1);
$array_GPRS_data[13] …Run Code Online (Sandbox Code Playgroud) 我刚刚收购了中型项目的服务方面.前开发人员将他的所有功能都作为单独的PHP脚本而不是类(func1.php,func2.php等)......所有这些"函数"都引用了mysqli_connect引用实际的"databaseonnection.php"文件.这是每次运行任何脚本时创建一个新连接(每次我必须调用一个函数),我不想这样做.我正在考虑建立一个持久的连接,但我担心它会失控,因为项目每天都在增长.那么,有没有人遇到类似的情况?处理我与数据库的连接的最佳方法是什么?任何建议将不胜感激.
将连接代码写到数据库时,是否有人可以查看我的数据库用户名和密码?他们不能连接和改变我的数据库吗?输入我的用户名和密码而不加密似乎很奇怪.
mysql_connect(localhost, user1, correcthorsebatterystaple)
Run Code Online (Sandbox Code Playgroud)
我知道右键单击视图源时无法查看源.但是如果有人用ahref = mywebsite.com/connect_file.php创建了一个快速的html页面,那么他们右击并下载他们可以查看我的PHP代码以及我的用户名和passowrd,对吧?
是否可以保留所有与数据库相关的配置(主机名,用户名,密码和数据库)以及连接到并在单独的类中选择正确数据库的功能?
我试过这样的事情:
class Database
{
var $config = array(
'username' => 'someuser',
'password' => 'somepassword',
'hostname' => 'some_remote_host',
'database' => 'a_database'
);
function __construct() {
$this->connect();
}
function connect() {
$db = $this->config;
$conn = mysql_connect($db['hostname'], $db['username'], $db['password']);
if(!$conn) {
die("Cannot connect to database server");
}
if(!mysql_select_db($db['database'])) {
die("Cannot select database");
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后在另一个类中我会在类__construct函数中使用:
require_once('database.php');
var $db_conn = new Database();
Run Code Online (Sandbox Code Playgroud)
但这并没有保存连接,它最终默认为服务器本地数据库连接.或者,在执行某些数据库命令之前,我是否每次都必须执行数据库命令?
每当我尝试在hostgator托管的网站上运行php脚本时,我都会收到此错误:
警告:mysql_connect()[function.mysql-connect]:第6行/home/pieboy13/public_html/quigley/WebContent/Scripts/register.php中的未知MySQL服务器主机'pieboy13_(用户名)'(1)错误:可能没有连接到服务器.错误未知MySQL服务器主机'pieboy13_(用户名)'(1)
其中(用户名)是我的用户名.
什么可能导致这个?
我有一个表单,用户可以在其中输入数据库信息,并可以单击使用AJAX将凭据发送到此页面的链接.我遇到的问题是,只要他们输入正确的主机名,脚本就会返回TRUE.
有没有其他方法来测试这个,FALSE如果用户名和密码无效,它将返回?
$h = urldecode($_GET['h']);
$u = urldecode($_GET['u']);
$p = urldecode($_GET['p']);
$con = mysql_connect($h, $u, $p);
if(!$con){
echo 'Could not connect';
}
else{
echo 'Connected';
}
Run Code Online (Sandbox Code Playgroud)
为了将来参考,问题是mysql用户表中的user ="Any"的条目.我删除了这些用户,脚本按预期工作.我更新了这篇文章,为任何有类似问题的人提供了一个屏幕截图.感谢下面的Fabio 提出的建议!

我正在开发完全重新开发的网站和销售系统,并且很快就遇到了这个Max_connections问题.
我发布了这个问题: 关闭/汇集MySQL ODBC连接 最近,但是已经尝试了一些其他的东西,仍然空白,但有更多细节提供...
我有一个非常复杂的销售流程,在创建发票时,我似乎每次都要运行7个"流程".我已经计算了在创建发票过程中使用数据连接的次数,它取决于几个条件值,它是7-9,所以数据连接实际上根本没有关闭.
为了加快编码速度,我已经制作了几个处理数据库连接的函数,所以我将在下面发布.
首先,我的连接字符串是:
"DRIVER={MySQL ODBC 3.51 Driver}; SERVER=mysql.dc-servers.com; DATABASE=jamieha_admin; UID=USERID; PASSWORD=pWD; OPTION=3;pooled=true;Max Pool Size=100"
Run Code Online (Sandbox Code Playgroud)
我用来打开和关闭数据库的功能如下:
Function connectionString(sql As String, closeConnection As String) As OdbcConnection
Dim DBConnection As String = ConfigurationManager.ConnectionStrings("dbConnNew").ConnectionString
'this is getting the connection string from web.config file.
Dim oConnection As OdbcConnection = New OdbcConnection(DBConnection) 'call data connection
connectionString = New OdbcConnection(DBConnection)
If closeConnection <> "close" Then _
connectionString.Open() ' open data connection
End Function
Run Code Online (Sandbox Code Playgroud)
这个函数给了我一个OdbcConnection连接字符串对象,然后我可以使用它:
Function openDatabase(sql As String) As OdbcCommand
openDatabase = …Run Code Online (Sandbox Code Playgroud) 我正在使用mysql-server 5.5并创建了一个服务器实例.创建后,我尝试打开实例编辑器并选择Options File,CONFIGURATION但它说
找不到配置文件''.应用更改时将创建新文件
然后
配置文件不包含section [],因此添加了一个新文件.如果这不正确,请在服务器实例编辑器中修复部分名称,然后重新打开管理员.
但我已经检查,看看我有一个my.cnf在/etc/mysql/my.cnf.
这导致我无法从Eclipse连接到我的数据库的问题.
所以问题是如何在mysql-server上解决这个问题,还是有办法为服务器实例设置配置文件?
P/s:我正在使用Ubuntu 12.04
UPDATE
我有以下格式的查询,
DROP TABLE X;
CREATE TEMPORARY TABLE IF NOT EXISTS X (SELECT * FROM TABLE);
SELECT A,B,C FROM X;
但是,如果我使用 mysql 连接器在 Python 中运行它。我收到以下消息,'No result set to fetch from'。我的理解是它只执行第一个DROP TABLE X;并返回。还有其他方法可以实现这一目标吗?我也尝试过使用multi=True,但也没有用。提前致谢
python mysql-connect mysql-connector mysql-python mysql-connector-python
function db_connect($db_host, $db_user, $db_pass, $db_name) {
$db_connect = mysqli_connect($db_host, $db_user, $db_pass) or die('Could not connect: ' . mysqli_error($db_connect));
$db_select = mysqli_select_db($db_name, $db_connect) or die ('Could not select ' . $db_name . ': ' . mysqli_error($db_select));
}
Run Code Online (Sandbox Code Playgroud)
每个变量都是定义的.出现的只是
无法选择CMS:
甚至没有错误消息.我究竟做错了什么?据我所知,它连接到MySQL,但它没有连接到指定的数据库'CMS'.