Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.06.2012, 00:08
Аватар для Hekumok
Отправить личное сообщение для Hekumok Посмотреть профиль Найти все сообщения от Hekumok
 
Регистрация: 04.06.2012
Сообщений: 513

No database selected
Недавно начал учить php. И вот весь день сёдня мучался с php и мускулом, хотел сделать регистрацию. То одна ошибка, то другая. И теперь такая фигня, при добавлении записей в базу данных mySQL
выдает ошибку 'No database selected'...
Почему? Как это исправить?
Страница регистрации:
<html>
<head><title>Регистрация</title></head>
<body>
<h1>Регистрация аккаунта:</h1>
<form action="registration_action.php" method="POST">
Логин: <input type="text" name="Логин"/><br/><br/>
E-mail: <input type="text" name="Е-mail" /><br /><br/>
Пароль: <input type="password" name="Пароль[]"/><br/><br/>
Повторите пароль: <input type="password" name="Пароль[]"/><br/><br/>
<input type="submit" value="Регистрация" />
</form>
</body>
</html>

После регистрации:
<html><head>
<title>Регистрация</title>
<meta http-equiv="Content-Language" Content="ru">
</head><body>
<?php 
function validate($allSubmitted) {
$message = "";
$passwords = $allSubmitted["Пароль"];
$firstPass = $passwords[0];
$secondPass = $passwords[1];
$username = $allSubmitted["Логин"];
if ($firstPass != $secondPass) {
$message = $message."Неверный пароль.<br/>";
}
if (strlen($username) < 5 || strlen($username) > 25) {
$message = $message."Логин должен содержать больше 5 и меньше 25 символов.<br/>";
}
if ($message == "") {
$message = "OK";
}
return $message;
} ;
function db_connect($user='u777676273_nekit', $password='071296atikin', $db='u777676273_users') {
mysql_connect('mysql.hostinger.ru', $user, $password)
or die('Не могу подключиться к БД: ' . mysql_error());
}
if (validate($_POST) == "OK") {
echo "<p>Спасибо за регистрацию!</p>";
db_connect();
$sql = "insert into users (username, email, password) values
('".$_POST["Логин"]."', '".$_POST["Е-mail"]."',  \
 '".$passwords[0]."')";
$result = mysql_query($sql);
if ($result) {
echo "Мы вошли!";
} else {
echo "Возникли проблемы при добавлении записей в БД: ".mysql_error();
}
} else {
echo "<p>У вас при регистрации возникли проблемы:</p>";
echo validate($_POST);
echo "<p>Пожалуйста, поробуйте снова.</p>";
} ;
?>
<p>Ваши данные:</p>
<?php
foreach ($_POST as $key=>$value) {
echo "<p>".$key." = " . $value . "</p>"; 
}
$passwords = $_POST["Пароль"];
echo "Пароль = ".$passwords[0] ;
echo "<p>";
echo "Повтор пароля = ".$passwords[1];
echo "</p>";
?>
</body></html>

Последний раз редактировалось Hekumok, 13.06.2012 в 00:11.
Ответить с цитированием
  #2 (permalink)  
Старый 13.06.2012, 12:00
Аватар для Hekumok
Отправить личное сообщение для Hekumok Посмотреть профиль Найти все сообщения от Hekumok
 
Регистрация: 04.06.2012
Сообщений: 513

что, никто не знает? =(
Ответить с цитированием
  #3 (permalink)  
Старый 13.06.2012, 15:14
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Попробуйте указывать БД при помощи mysql_select_db.
Ответить с цитированием
  #4 (permalink)  
Старый 13.06.2012, 15:49
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

function db_connect( $db_host, $db_user, $db_pass, $db_name ) {

	$result = mysql_connect( $db_host, $db_user, $db_pass );

	if ( !$result ) {
		return false;
	}

	if ( !mysql_select_db( $db_name ) ) {
		return false;
	}

	return $result;
}
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #5 (permalink)  
Старый 13.06.2012, 18:48
Аватар для Hekumok
Отправить личное сообщение для Hekumok Посмотреть профиль Найти все сообщения от Hekumok
 
Регистрация: 04.06.2012
Сообщений: 513

Сообщение от devote Посмотреть сообщение
function db_connect( $db_host, $db_user, $db_pass, $db_name ) {

	$result = mysql_connect( $db_host, $db_user, $db_pass );

	if ( !$result ) {
		return false;
	}

	if ( !mysql_select_db( $db_name ) ) {
		return false;
	}

	return $result;
}
devote, а куда это вставлять или заменять? Я вабще плохо php понимаю
Ответить с цитированием
  #6 (permalink)  
Старый 13.06.2012, 19:15
Аватар для SkyLight
Злюка-бобер
Отправить личное сообщение для SkyLight Посмотреть профиль Найти все сообщения от SkyLight
 
Регистрация: 21.03.2010
Сообщений: 438

Поищите похожие места у себя в коде и поймете.
__________________
In WEB We Trust
У всех есть своя темная сторона...
Ответить с цитированием
  #7 (permalink)  
Старый 13.06.2012, 19:18
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от Hekumok
devote, а куда это вставлять или заменять? Я вабще плохо php понимаю
в вашем случае строка 23-26 замените, пропишите тот же хост, логин, пароль ну и имя самой базы конечно же.
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #8 (permalink)  
Старый 13.06.2012, 21:55
Аватар для Hekumok
Отправить личное сообщение для Hekumok Посмотреть профиль Найти все сообщения от Hekumok
 
Регистрация: 04.06.2012
Сообщений: 513

То есть мне, тут
function db_connect( $db_host, $db_user, $db_pass, $db_name )

написать
function db_connect( $db_host='mysql.hostinger.ru', $db_user='u777676273_nekit', $db_pass='071296atikin', $db_name='u777676273_users' )

Или
function db_connect( 'mysql.hostinger.ru', 'u777676273_nekit', '071296atikin', 'u777676273_users' )

Первое или второе?
Ответить с цитированием
  #9 (permalink)  
Старый 13.06.2012, 22:46
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

первое

Hekumok, я бы на вашем месте давно бы уж попробовал бы и так и сяк.. заняло бы это пару минут.
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #10 (permalink)  
Старый 13.06.2012, 22:48
Аватар для Serg_pnz
Сам по себе
Отправить личное сообщение для Serg_pnz Посмотреть профиль Найти все сообщения от Serg_pnz
 
Регистрация: 09.06.2009
Сообщений: 963

Hekumok,
это пригодится, там простые функции подключения, выборки, добавления можно подсмотреть
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jQuery Template на Спиши.ру ВыносМозга jQuery 9 15.01.2012 16:13
как с помощью javascript установить selected для тега option? re-kru-t Общие вопросы Javascript 1 19.02.2011 15:49
select + onchange + selected Harosh Элементы интерфейса 2 23.01.2011 04:39
Установить selected в динамических списках при загрузке страницы FlintOFF jQuery 2 12.03.2010 10:42
как тегу option с определенным value присвоить selected kichSman Общие вопросы Javascript 2 24.10.2009 03:14