这是一个普遍的问题。 我在xampp中编译了网站并且运行正常,因为缺乏经验我使用了mysql函数而不是改进的mysqli。
在ecowebhost
网站上传我的网站不起作用,我改变了路径,显然没有发生连接错误。但我仍然无法与我的数据库进行交互。
从网站看来支持php4版本,我是否需要重新编译我的网站呢?
这是我想要做的一些示例代码......
<?php
function connectto($tablename){
$db_host = "xxx";
$db_username = "xxx";
$db_pass = "xxx";
$link = mysqli_connect("$db_host","$db_username","$db_pass","$tablename") or die ("Could not connect to MySQL");
// @mysql_connect("$db_host","$db_username","$db_pass") or die ("Could not connect to MySQL");
// @mysql_select_db("$tablename") or die ("No database");
}
?>
由于
如果我运行以下
<?php
// connection to database
// include_once "connectto.php";
// connectto('test');
$tablename = "test";
$db_host = "xxx";
$db_username = "xxx";
$db_pass = "xxx";
$link =mysqli_connect("$db_host","$db_username","$db_pass","$tablename")
or die ("Could not connect to MySQL");
if (mysqli_connect_errno()) { die("Failed to connect to MySQL: " . mysqli_connect_error());}
else { echo " <br /><br />connection established! <br />";}
?>
唯一出现的错误消息是
无法连接到MySQL
...更新
我的代码有点工作,但我正在努力寻找在数据库中插入一些值的方法......
<?php
$db_host = "xxxx";
$db_username = "xxxx";
$db_pass = "xxxx";
// $link = mysqli_connect("$db_host","$db_username","$db_pass","cl45-members-7b5") or die ("Could not connect to MySQL");
@mysql_connect("$db_host","$db_username","$db_pass") or die ("Could not connect to MySQL");
@mysql_select_db("cl45-members-7b5") or die ("No database");
$sql ="INSERT INTO members (username, email, gps_lat, gps_long, password, skill, skill_rate,) VALUES ('a','2','3','4','5','5','6')";
print '<br /><br /> Great! now you are registered; now update your profile <br />';
mysql_query ("$sql");
print '<br /><br />tutto ok;<br /><br />';
?>
有什么打击错了吗?我没有找到像数据库找不到的错误...
答案 0 :(得分:1)
您的问题让我感到困惑,但您可以使用以下内容使用MySQLi进行连接:
$link = new mysqli($db_host,$db_username,$db_pass,$tablename);
在您的代码中
or die ("Could not connect to MySQL");
如果您因任何原因无法连接,请说明打印出来。您不会再获取任何信息,因为您需要包含$ conn-&gt; connect_error,例如。
if ($link->connect_error) {die ("Failed: " . $link->connect_error);}
你最终会得到像
这样的东西$tablename = "test";
$db_host = "xxx";
$db_username = "xxx";
$db_pass = "xxx";
$link = new mysqli($db_host,$db_username,$db_pass,$tablename);
if ($link->connect_error) {
die ("Failed: " . $link->connect_error);
} else {
echo " <br /><br />connection established! <br />";
}
答案 1 :(得分:0)
经过一些疑惑并在小子任务中分解问题后,我相信我设法理解列表中那个小愚蠢的额外逗号阻止我运行程序,我复制粘贴了一个在线共享的语法,现在一切似乎工作......
结果: - 检查拼写 - 逐个隔离问题......