2
<?
require_once('etcore.php');
mysql_connect($dburl,$dbuser,$dbpass) or die(mysql_error()); 
mysql_select_db("rshost") or die(mysql_error());
$username=strtoupper(clean($_POST['username']));
$password=md5($_POST['password']);
$andover = mysql_query("SELECT * FROM users WHERE usernameupper='$username' AND password='$password'") or die(mysql_error().__LINE__);
$numberofthings = mysql_num_rows($andover) or die(mysql_error().__LINE__);
if ($numberofthings = 1) {
    $getit=mysql_fetch_array($andover) or die(mysql_error().__LINE__);
    $_SESSION['id'] = $getit['id'];
    header('Location: index.php');
}
else {
?>
<h1>Login:</h1>
<img src='http://media.idownloadblog.com/wp-content/uploads/2011/12/Warning.png' width="25" height="25" />
<strong style="color:#F03;">Incorrect Username and/or Password </strong><br>
<form method="POST" action="login.php">
Username: <input name="username" type="text" /><br />
Password: <input name="password" type="password" /><br />
<input name="submit" type="submit" value="Log In!" /><br />
</form>
<? } ?>

これは私が使用しているコードです。コードを実行するたびに、7行目に「データベースが選択されていません」というエラーが表示されます。助けていただければ幸いです。ありがとう!ところで:Dbユーザー、パス、URLはすべて「etcore.php」ファイルに含まれているので、問題はありません。また、これらの変数を文字列に置き換えようとしましたが、同じエラーが発生します。

4

2 に答える 2

5

どうですか:

mysql_select_db("rshost", mysql_connect($dburl,$dbuser,$dbpass))

またはさらに良い:

$handle = mysql_connect($dburl,$dbuser,$dbpass);
mysql_select_db("rshost", $handle);

そして多分より良い知識と理解のために: マニュアルページ

セクションパラメータ$handleにあるので、引数 を使用しないと動作しない理由が明確になります

于 2012-05-19T14:39:18.963 に答える
0

データベース権限を付与します。データベースにアクセスするためのユーザー権限がない可能性があります。これを確認してください

mysql> grant all privileges on Databasename.* to 'username'@'localhost' identified by password
于 2012-05-19T14:43:29.843 に答える