Четверг, 28 Марта 2024, 12:13

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Программирование » Скриптовые языки программирования » Активация в PHP
Активация в PHP
dima9595Дата: Пятница, 09 Августа 2013, 12:37 | Сообщение # 1
почти ветеран
Сейчас нет на сайте
Всем доброго времени суток!

Я вот в свободное время пишу для себя сайтик...и столкнулся с одной маленькой, но надоедливой проблеммой...
Щас я пишу скрипт активации профиля, но только на начальной стадии.
При регистрации должно перейти информация в базу данных, а именно код для активации.
Код предстовляет себе хеш логина и пароля. Писал я вот так:
Код
$code = md5($login."".$password);


Но у меня выходила ошибка( Скажите пожалуйста, как правильно сделать!? Простисте что много ошибок, писал с телефона...




Сообщение отредактировал dima9595 - Пятница, 09 Августа 2013, 12:37
lvovandДата: Пятница, 09 Августа 2013, 13:32 | Сообщение # 2
старожил
Сейчас нет на сайте
код для сайта тоже с телефона пишешь? )
что за ошибка то выводится?


Разработка и продвижение сайтов. Дизайн
dima9595Дата: Пятница, 09 Августа 2013, 13:56 | Сообщение # 3
почти ветеран
Сейчас нет на сайте
Код
Parse error: syntax error, unexpected T_VARIABLE in Z:\home\GreatMiners.Ru\www\register.php on line 79


lvovandДата: Пятница, 09 Августа 2013, 14:06 | Сообщение # 4
старожил
Сейчас нет на сайте
тогда не только кусок про $code скидывай, а и те строчки, что перед этим идут

Разработка и продвижение сайтов. Дизайн
Yashko3Дата: Пятница, 09 Августа 2013, 14:15 | Сообщение # 5
Господин Ведущий
Сейчас нет на сайте
Цитата (dima9595)
$code = md5($login."".$password);

странно ты строки объединяешь
Код
$code = md5($login.$password);





старый профиль
php <3
DronCodeДата: Пятница, 09 Августа 2013, 14:30 | Сообщение # 6
Best Byte forever
Сейчас нет на сайте
напиши код из 79 строки

Занимаюсь программированием на PHP, JavaScript (jQuery), C# (не Unity3d!), Action Script 3.0 (в основном клепаю игрушки под соц сети.), Node.JS
Недавно стал изучать Python.
dima9595Дата: Пятница, 09 Августа 2013, 14:33 | Сообщение # 7
почти ветеран
Сейчас нет на сайте
тоже самое получается

Добавлено (09.08.2013, 14:33)
---------------------------------------------
DronCode,

Код
$code = md5($login."".$password);


VinchensooДата: Пятница, 09 Августа 2013, 14:39 | Сообщение # 8
Злобный социопат с комплексом Бога
Сейчас нет на сайте
Дай уже весь скрипт, сколько можно гадать.

dima9595Дата: Пятница, 09 Августа 2013, 14:43 | Сообщение # 9
почти ветеран
Сейчас нет на сайте
Код
<?php
//Защита отключена
define("MCS", 1);
//Подключаем движок
require_once("engine/engine.php");

##Скрипт регистрации
if (isset($_POST['reg_user'])){
      //Получаем переменные
      $login = $_POST['login'];
      $mail = $_POST['mail'];
      $password = $_POST['password'];
      $agreerules = $_POST['agreerules'];
      $ip = $_SERVER['REMOTE_ADDR'];
      $date_reg = date("d.m.Y");
      $access = "1";
        
      //Убираем плохие символы
      $login = htmlspecialchars($login);
      $login = stripcslashes($login);
      $mail = htmlspecialchars($mail);
      $mail = stripcslashes($mail);
      $password = htmlspecialchars($password);
      $password = stripcslashes($password);
        
      //Проверяем на введённость полей
      if((strlen($login) < 4) || (strlen($login) > 20)){
          $bad = 1;
          $error = "Логин должен быть от 4 до 20 символов!<br>";
      }
      if((strlen($mail) < 8) || (strlen($mail) > 100)){
          $bad = 1;
          $error1 = "Ваш E-Mail адрес должен быть от 8 до 100 символов!<br>";
      }
      if((strlen($password) < 6) || (strlen($password) > 50)){
          $bad = 1;
          $error2 = "Ваш пароль должен быть от 6 до 50 символов!<br>";
      }
        
      //Кэшируем пароль
      $password = md5($password);
        
      //Проверяем на существования логина, почты и ip адреса в базе данных
      $sql_l = mysql_query("SELECT * FROM users WHERE login='$login'");
      $sql_le = mysql_fetch_array($sql_l);
      if(!empty($sql_le['login'])){
          $bad = 1;
          $error3 = "Извените, но данный логин уже занят!<br>";
      }
      $sql_m = mysql_query("SELECT * FROM users WHERE mail='$mail'");
      $sql_me = mysql_fetch_array($sql_m);
      if(!empty($sql_me['mail'])){
          $bad = 1;
          $error4 = "Извените, но данный E-Mail адрес уже занят!<br>";
      }
      $sql_ip = mysql_query("SELECT * FROM users WHERE ip='$ip'");
      $sql_ipe = mysql_fetch_array($sql_ip);
      if(!empty($sql_ipe['ip'])){
          $bad = 1;
          $error5 = "Извените, но данный IP адрес уже используется! Дальнейшая регистрация с данным IP невозможна!<br>";
      }
        
      //Проверяем на существование положительного ответа по правилам
      if(!isset($agreerules)){
          $bad = 1;
          $error6 = "Извените, но вы не подтвердили согласие с правилами!<br>";
      }
        
      //Если ошибок нет, то добавляем данные в базу данных
      if($bad != 1){
          $sql_reg = mysql_query("INSERT INTO users (login, password, ip, mail, banned, access, date_reg) VALUES ('$login', '$password', '$ip', '$mail', '$banned', '$access', '$date_reg')");
          $bad = 2;
          $success = "Вы успешно зарегистрировались!<br>";
            
          //Добавляем денег игроку
          $sql_money = mysql_query("INSERT INTO money (username, balance) VALUES ('$login', '$site_a[money]')")
            
          //Создаём данные о активации
          $code = md5($login.$password);
          $sql_act = mysql_query("INSERT INTO activation (login, mail, code, activation) VALUES ('$login', '$mail', '$code', '0')");
            
          //Отправляем сообщение на E-Mail адрес пользователя
          $autor = "MCS.RU - Лучший MineCraft сервер!";
          $title = "С успешной регистрацией!";
          $text = 'Уважаемый '.$login.'!<br>
          Огромная благодарность за регистрацию в проекте "MCS.Ru"!<br>
          Для того, что бы вы могли использовать весь функционал сайта - вам портебуется активировать ваш профиль!<br>
          <a href="/activation?code=$code">Активировать профиль</a>
          ';
          mail($autor, $title, $text);
      }
        
      //Защищаемся от повторной регистрации
      unset($sql_reg);
      unset($reg_user);
      unset($sql_act);
}
?>
<!DOCTYPE html>
<html>
<head>
<title><?php echo $site_a['site_name']; ?> - Регистрация</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="template/css/style.css" rel="stylesheet" media="screen">
</head>
<body>
        
<?php
include("template/header.php");
?>
        
<div class="container">
<div class="row">
        
<?php
include("template/left.php");
?>

<div class="span10">

<?php
if($bad == 1){
echo '<div class="alert alert-error">';
echo '<h4>Внимание, у вас ошибка(-и)!</h4>';
echo $error;
echo $error1;
echo $error2;
echo $error3;
echo $error4;
echo $error5;
echo $error6;
echo '</div>';
}
if($bad == 2){
echo '<div class="alert alert-success">';
echo '<h4>Поздравляем!</h4>';
echo $success;
echo '</div>';
}
?>
        
<div class="well well-small">

<blockquote>
<p>Регистрация нового майнера.</p>
<small>Что бы играть на нашем сервере - регистрация обязательна!</small>
</blockquote>

<form class="form-horizontal" action="register.php" method="POST">
        
<div class="control-group">
<label class="control-label" for="login">Логин (От 4 до 20):</label>
<div class="controls">
<input type="text" name="login" placeholder="Ваш будущий логин">
</div>
</div>

<div class="control-group">
<label class="control-label" for="mail">E-Mail (От 8 до 100):</label>
<div class="controls">
<input type="text" name="mail" placeholder="Ваш E-Mail адрес">
</div>
</div>

<div class="control-group">
<label class="control-label" for="password">Пароль (От 6 до 50):</label>
<div class="controls">
<input type="password" name="password" placeholder="Ваш будущий пароль">
</div>
</div>

<div class="control-group">
<div class="controls">
<label class="checkbox inline">
<input type="checkbox" name="agreerules" value="agree1"> Регистрируясь, вы соглашаетесь с <a href="#">правилами сайта</a> и с <a href="#">правилами сервера</a>
</label>
</div>
</div>

<div class="control-group">
<div class="controls">
<button type="reg_user" name="reg_user" class="btn btn-success">Зарегистрироваться</button>
</div>
</div>

</form>

</div>
</div>

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

</div>      
</div>

<script src="http://code.jquery.com/jquery.js"></script>
<script src="template/js/game.js"></script>
</body>
</html>




Сообщение отредактировал dima9595 - Пятница, 09 Августа 2013, 14:44
last2424Дата: Пятница, 09 Августа 2013, 14:51 | Сообщение # 10
30 мл. блоков
Сейчас нет на сайте
Через and пробывал?

Предупреждение: всё что я написал в зачёркнутом виде является шуткой и никак не пытает обидеть того к кому обращаются.(нет)
lvovandДата: Пятница, 09 Августа 2013, 14:51 | Сообщение # 11
старожил
Сейчас нет на сайте
Код

           //Добавляем денег игроку
           $sql_money = mysql_query("INSERT INTO money (username, balance) VALUES ('$login', '$site_a[money]')")


точку с запятой в конце строки забыл


Разработка и продвижение сайтов. Дизайн
Yashko3Дата: Пятница, 09 Августа 2013, 14:52 | Сообщение # 12
Господин Ведущий
Сейчас нет на сайте
Код
$sql_money = mysql_query("INSERT INTO money (username, balance) VALUES ('$login', '$site_a[money]')")


тут нет " ; ", в этом проблема.





старый профиль
php <3
VinchensooДата: Пятница, 09 Августа 2013, 14:59 | Сообщение # 13
Злобный социопат с комплексом Бога
Сейчас нет на сайте
Вот вот, и совершенно строка с хешем ни при чем.

dima9595Дата: Пятница, 09 Августа 2013, 15:03 | Сообщение # 14
почти ветеран
Сейчас нет на сайте
всем спс, как приду домой попробую=)



Сообщение отредактировал dima9595 - Пятница, 09 Августа 2013, 15:05
Форум игроделов » Программирование » Скриптовые языки программирования » Активация в PHP
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг