我经历了一个艰难的过程,弄清楚如何在配置文件中绑定正确的地址,并将mysql连接到远程服务器。昨天它使用不同的代码,现在它不连接。我得到了死亡“连接失败:”但它没有向我显示connect_error,因为我甚至找不到这个问题?有人看到我的代码有问题吗?注意:我知道这是不安全的,我通常会准备好声明,但现在只是尝试与db连接问题一起工作。Mysql配置正确的远程连接,但PHP代码失败连接?
<?php
$server = "174.---.--.187";
$username = "dylanto";
$pass = "------";
$db = "survey";
//$port = 3306;
//create connection
$conn = new mysqli($server, $username, $pass, $db);
//check connection
if (!$conn->connect_error) {
die("Connection failed: " . $conn->connect_error);}
$user = $_POST['user'];
$pass = $_POST ['pass'];
$sql = "insert into login (user, pass) values ('$user','$pass')";
if ($conn->query($sql)==TRUE) {
echo "Account created";}
else {echo "something went wrong";}
$con->close;
?>
HTML代码:
<html><head><title>Log-in</title>
<link rel="stylesheet" type="text/css" href="sytle.css"></head>
<body>
<center><u><strong><h2>Login</h2></u></strong></center>
<br />
<center>
<form action="signup_process.php" method="POST">
Pick Username: <br>
<input type ="text" name = "user"><br>
Pick Password:<br>
<input type ="password" name ="pass"><br>
<input type="submit" name="submit" value="Sign-up">
</form></center>
</body>
</html>
'如果(!$ conn-> connect_error){'这个=不存在连接错误删除'!' – cmorrissey
此外,您的代码对于需要学习PDO或mysqli的SQL注入攻击是开放的。 – cmorrissey
您已经开放了SQL注入。由于您使用的是mysqli,请利用[prepared statements](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)和[bind_param](http://php.net/手动/ EN/mysqli的-stmt.bind-param.php)。 **这将照顾任何可能发生讨厌的报价问题。** – aynber