好的,根据您的评论,我想尝试回答您的问题。
这应该是您的 PHP 脚本 db.php(实际上不推荐使用 mysql_* 方法,但为了保持简单,这是另一天的故事):
<?php
define('DB_HOST', $_SERVER['SERVER_NAME']);
define("DB_USER", $_POST['DB_USER']);
define("DB_PASS", $_POST['DB_PASSWORD']);
define("DB_NAME", $_POST['DB_NAME']);
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
if (!$link) {
die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db(DB_NAME, $link);
if (!$db_selected) {
die ("Can't use db: " . mysql_error());
}
?>
这可能是您的 HTML 页面 index.html:
<form action="db.php" method="post">
User: <input type="text" name="DB_USER"><br>
Pass: <input type="text" name="DB_PASSWORD"><br>
DB: <input type="text" name="DB_NAME"><br>
<input type="submit" value="submit">
</form>
根据您的问题,您在某处遇到了一些错误,因此 db.php 可能会因相应的消息而死。如果是这样,你可以试试这个:
<?php
$link = mysql_connect("host", "user", "password");
if (!$link) {
die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db("db", $link);
if (!$db_selected) {
die ("Can't use db: " . mysql_error());
}
?>
这意味着不使用发布的变量,而是使用您知道它们有效的字符串。
即使第二个脚本失败,您的数据(用户、密码和/或数据库)也不正确。如果第二个脚本成功,则您发布的表单可能有问题。