Вопрос по php, mysql – MYSQL PHP База данных не выбрана - ошибка не найдена

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-адрес находятся в файле & apos; etcore.php & apos; файл, так что это не проблема там. Я также попытался заменить эти переменные на строки и получить ту же ошибку.

Попробуйте сохранить дескриптор соединения и передать его явно. Любое изменение вы создаете новое соединение с базой данных в чистой функции? В любом случае, стоит попробовать: $ res = mysql_connect (); mysql_select_db (& quot; rshost & quot ;, $ res); mysql_query (..., $ res); Maxim Krizhanovsky
Какая строка 7?$andover = mysql_query(...) один? Marc B
@Darhazer спасибо, это очень помогло! jbman223

Ваш Ответ

2   ответа
5

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

или даже лучше:

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

А может быть для лучшего знания и понимания: страница справочника

в разделеparameters так что было бы понятно, почему он может или не может работать без использования$handle аргумент

0

у вас нет разрешения пользователя на доступ к базе данных, Проверь это

mysql> grant all privileges on Databasename.* to 'username'@'localhost' identified by password
Это фактически решило мою проблему! Очевидно, что старые функции mysql не говорят правду об ошибке - это еще одна причина, по которой мы не должны их использовать!

Похожие вопросы