我正在尝试将数据发送到服务器数据库,我使用wamp服务器实现它工作正常但是当我在我的域上安装数据库并将其切换到我的域时它给出了以下错误。
我将文件保存在根目录
中的文件夹中未知的MySQL服务器主机' DB_HOST' (0)
下面是我用来连接数据库的配置文件
<?php
// Database configuration
define('DB_USERNAME', 'user');
define('DB_PASSWORD', 'xxxx');
define('DB_HOST', '192.210.195.245');
define('DB_NAME', 'tabanico_userlogin');
?>
这里连接db,config.php文件的代码包含上面粘贴的代码
<?php
class DbConnect {
private $conn;
function __construct() {
// connecting to database
$this->connect();
}
function __destruct() {
$this->close();
}
function connect() {
include_once dirname(__FILE__) . './Config.php';
$this->conn = mysql_connect(DB_HOST, DB_USERNAME, DB_PASSWORD) or die(mysql_error());
mysql_select_db(DB_NAME) or die(mysql_error());
// returing connection resource
return $this->conn;
}
// Close function
function close() {
// close db connection
mysql_close($this->conn);
}
}
?>
我的文件接收数据
<?php
include_once './DbConnect.php';
function createNewPrediction() {
$response = array();
$id = $_POST["id"];
$name = $_POST["name"];
$email = $_POST["email"];
$password = $_POST["password"];
$db = new DbConnect();
// mysql query
$query = "INSERT INTO login(id,name,email,password) VALUES('$id','$name','$email','$password')";
$result = mysql_query($query) or die(mysql_error());
if ($result) {
$response["error"] = false;
$response["message"] = "Prediction added successfully!";
} else {
$response["error"] = true;
$response["message"] = "Failed to add prediction!";
}
// echo json response
echo json_encode($response);
}
createNewPrediction();
?>
我见过相关帖子,但没有找到有用的答案。任何人都可以帮我摆脱这个。提前谢谢。
答案 0 :(得分:0)
请在尝试连接服务器的位置发布代码。我猜你试图使用以下功能进行连接:
mysql_connect('DB_HOST', 'DB_USERNAME', 'DB_PASSWORD');
由于您使用define('DB_HOST', 'localhost');
定义了主机,因此您不必使用撇号。 DB_HOST
在这里是常数。所以尝试使用
mysql_connect(DB_HOST, DB_USERNAME, DB_PASSWORD);
代替。如果您使用'DB_HOST'
中的撇号,则会将其解释为字符串,而不是包含DB_HOST
的常量localhost
的值。这可能是您收到DB_HOST
是未知主机的错误的原因。
但请发布代码的连接部分,看看这是不是真的错误。