siew

Рейтинг
7
Регистрация
08.02.2017

Rokkkin, Ваш вариант отлично работает, но еще хотелось бы, чтобы появлялось сообщение при неверном вводе.

Все равно не перекидывает

---------- Добавлено 22.05.2017 в 15:18 ----------

Ребят, так есть вообще хоть какой-то способ сделать переадресацию? Или может кто поделится скриптом с такой функцией? Везде же где регистрируешься тебя сразу кидает в кабинет, а тут весь инет перерыл, но попадаются лишь скрипты, которые требуют второй раз вводить данные для авторизации.

Rokkkin:
siew, Ну вы же не тупо копируйте, как написал silicoid код ломается на этом форуме, посмотрите свой исходный файл и сравните что изменилось и что нужно добавить.

Я уже это понял.

Sitealert:
Опять?! Было же уже. Вы уж объясните более внятно, что там у Вас не работает: редирект или аутентификация.

Это другой скрипт.

Не работает именно редирект. После заполнения полей регистрации, появляется сообщение "Вы успешно зарегистрированы!" но ты остаешься на этой же странице, и чтобы войти приходится опять вводить логин и пароль в форму авторизации.

Rokkkin:
вот так сделай, вместо 123456 напиши свой номер приглашения
файл register.php остальные редактировать не нужно

Отредактировал, страница не загружается, пишет: "Страница недоступна. Сайт пока не может обработать этот запрос." Вот что у меня получилось, в чем может быть проблема?

Файл register.php


<?php
include_once 'handler.php'; // проверяем авторизирован ли пользователь

// если да, перенаправляем его на главную страницу
if($user) {
header ('Location: index.php');
exit();
}
if(!empty($_POST***91;'priglashenie'***93;) AND ($_POST***91;'priglashenie'***93; =='123456')){
if (!empty($_POST***91;'login'***93;) AND !empty($_POST***91;'password'***93;))
{
// фильтрируем логин и пароль
$login = mysql_real_escape_string(htmlspecialchars($_POST***91;'login'***93;));
$password = mysql_real_escape_string(htmlspecialchars($_POST***91;'password'***93;));

// проверяем есть ли логин в нашей базе данных
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `users_profiles` WHERE `username` = '".$login."' LIMIT 1;"), 0) != 0)
{
echo 'Выбранный логин уже зарегистрирован!';
exit();
}
// заносим данные в таблицу, обратите внимание - пароль кодируем в md5
mysql_query("INSERT INTO `users_profiles` (`username`, `password`) VALUES ('".$login."', '".md5($password)."')");
echo 'Вы успешно зарегистрированы!';
exit();
}
}
// форма регистрации
echo '
<form action="register.php" method="POST">
Логин:<br/>
<input name="login" type="text" value="" /><br/>
Пароль:<br/>
<input name="password" type="text" value="" /><br/>
Приглашение:<br/>
<input name="priglashenie" type="text" value="" /><br/>
<input type="submit" value="Зарегистрироваться" />
</form>';
?>
Sitealert:
Да, в конце никак нельзя. Попробуйте так

Все сделал, обновляется страница register.php пустая а в исходном коде лишь:

<script>alert(Account Successfully Created)</script>
Sitealert:
Вставляйте везде, где надо
header("Location: intropage.php");

exit;

Вот вставил (внизу):


<?php require_once("includes/connection.php"); ?>
<?php include("includes/header.php"); ?>


<?php

if(isset($_POST["register"])){


if(!empty($_POST['full_name']) && !empty($_POST['email']) && !empty($_POST['username']) && !empty($_POST['password'])) {
$full_name=$_POST['full_name'];
$email=$_POST['email'];
$username=$_POST['username'];
$password=$_POST['password'];



$query=mysql_query("SELECT * FROM usertbl WHERE username='".$username."'");
$numrows=mysql_num_rows($query);

if($numrows==0)
{
$sql="INSERT INTO usertbl
(full_name, email, username,password)
VALUES('$full_name','$email', '$username', '$password')";

$result=mysql_query($sql);


if($result){
$message = "Account Successfully Created";
} else {
$message = "Failed to insert data information!";
}

} else {
$message = "That username already exists! Please try another one!";
}

} else {
$message = "All fields are required!";
}
}
?>


<?php if (!empty($message)) {echo "<p class=\"error\">" . "MESSAGE: ". $message . "</p>";} ?>

<div class="container mregister">
<div id="login">
<h1>REGISTER</h1>
<form name="registerform" id="registerform" action="register.php" method="post">
<p>
<label for="user_login">Full Name<br />
<input type="text" name="full_name" id="full_name" class="input" size="32" value="" /></label>
</p>


<p>
<label for="user_pass">Email<br />
<input type="email" name="email" id="email" class="input" value="" size="32" /></label>
</p>

<p>
<label for="user_pass">Username<br />
<input type="text" name="username" id="username" class="input" value="" size="20" /></label>
</p>

<p>
<label for="user_pass">Password<br />
<input type="password" name="password" id="password" class="input" value="" size="32" /></label>
</p>


<p class="submit">
<input type="submit" name="register" id="register" class="button" value="Register" />
</p>

<p class="regtext">Already have an account? <a href="login.php" >Login Here</a>!</p>
</form>

</div>
</div>



<?php include("includes/footer.php"); ?>


<?php
header("Location: intropage.php");
exit;
?>

Регистрация прошла успешно, появилось сообщение "MESSAGE: Account Successfully Created" но никуда со страницы register.php так и не ушел.

jpg bbbbbbbbbbbb.jpg
LEOnidUKG:
В начале файла попробуйте вставить:

<?php
ob_start();

На странице авторизации это отлично работает.

А со страницей регистрации проблема: Появляется сообщение, об успешной регистрации,


if($result){
$message = "Account Successfully Created";
}

но ты остаешься на этой же странице.

Надо чтобы после сообщения его через пару секунд перекидывало на на страницу intropage.php авторизованным.

---------- Добавлено 13.05.2017 в 16:06 ----------

Sitealert:
А зачем там буферизация?

---------- Добавлено 13.05.2017 в 15:52 ----------

Понимаете, если Вы прописали редирект и после него завершение работы скрипта, то без вариантов дальше этого места программа не пойдёт. Если конечно выполнено условие для редиректа. Может быть, у Вас там с сессиями что-то не то? Хотя при авторизации редирект уже по условию найденного пользователя - опять же должен без вариантов срабатывать.

О какой буферизации вы говорите? Просто для меня это достаточно темный лес, поэтому и прошу показать сразу готовый, исправленный код.

Sitealert:
Что, и с exit не работает? Не может быть такого. Не верю.

Может я что-то не так делаю, не туда прописываю, если не трудно, можете исправленные кода кинуть для логин и регистрации?

danforth:


Так проходит редирект?

Все равно не работает

123
Всего: 30