Здравейте, от доста време ползвам сайта.
Мого полезни уроци има.
Доста чесото чета из форума, и знам че повечето от вас разбират доста.
И се надявам че ще споделяте своя опит.
Правя си една логин системка и имам следния проблем:
Проверката за регистрирани юзери не работи както трябва
ето го и кода :
ето и само частта с проверките:
Помагайте
Мого полезни уроци има.
Доста чесото чета из форума, и знам че повечето от вас разбират доста.
И се надявам че ще споделяте своя опит.
Правя си една логин системка и имам следния проблем:
Проверката за регистрирани юзери не работи както трябва
ето го и кода :
Код:
<?php
define('IN_VALID', true);
include ("include/header.php");
include ("modules/login.php");
include ("modules/stats.php");
echo ('
<div id="rightbar">');
@$query = mysql_query("SELECT * FROM `users` WHERE session='$ses'");
@$red = mysql_num_rows($query);
if ($red != NULL) {
$my_id = mysql_result($query, "0", "id");
$my_ime = mysql_result($query, "0", "username");
echo ('Вие вече имате акаунт и сте в него.');
}
else {
$a = rand(0,99);
$b = rand(0,9);
$random = "$a"."$b";
echo '<form name="reg" method="post">
<table border=0 width="64%" id="font2">
<tr>
<td colspan="2" align="center"></td>
</tr>
<tr>
<td align="right"><p class="margin">Потребител:</p></td>
<td><input type="text" name="username" /></td>
</tr>
<tr>
<td align="right"><p class="margin">Е-майл:</p></td>
<td>
<input type="text" name="email" /></td>
</tr>
<tr>
<td align="right"><p class="margin">Парола:</p></td>
<td><input type="password" name="password" /></td>
</tr>
<tr>
<td align="right"><p class="margin">Повтори паролата:</p></td>
<td><input type="password" name="password2">
</td>
</tr>
<tr>
<td align="right"><p class="margin">Секретен код</p></td>
<td><input name="code1" type="text" id="code1" readonly="readonly" value="';?><? echo "$random"; ?><? echo '" /></td>
</td>
</tr>
<tr>
<td align="right"><p class="margin">Повтори кода</p></td>
<td><input name="code2" type="text" size="25" /></td>
</tr>
<tr>
<td colspan="2" align="center">
<br /><input type="submit" name="submit" value="Регистрация" />
</td>
</tr>
</table>
</form>';
}
if (isset($_POST["submit"])) {
if (!empty($_POST["username"])) $username = htmlspecialchars($_POST["username"]);
else $errMsg = "Моля въведете потребител!<br />";
if (!empty($_POST["password"])) $password = htmlspecialchars($_POST["password"]);
else $errMsg = "Моля въведете парола!<br />";
if (!empty($_POST["email"])) $email = htmlspecialchars($_POST["email"]);
else $errMsg = "Моля въведете е-майл!<br />";
if (strlen($_POST['password']) < 6) $errMsg = "Паролата Ви е твърде къса!<br />";
if (empty($errMsg)) {
$chek = mysql_query("SELECT * FROM `users` WHERE `username`='$username'")or die(mysql_error()); //проверка да ли потребителя същестува
$chek = mysql_num_rows($chek);
if ($chek=='1') {
echo 'Този потребител вече е регистриран! <a href="?p=reg">Назад</a>'; //Изкарва резултат защото потребителя съществува
}
$chek2 = mysql_query("SELECT * FROM `users` WHERE `email`='$email'")or die(mysql_error()); //проверка да ли емайла е използван
$chek2 = mysql_num_rows($chek2);
if ($chek2=='1') {
echo 'Този емайл вече е бил използан от друг потребител!'; //Изкарва резултата защото вече има такъв емайл
}
else {
$code1 = $_POST['code1'];
$code2 = $_POST['code2'];
if($code1 !== $code2){
echo "Кода не съвпада";
die();
};
$ip = ip2long($_SERVER['REMOTE_ADDR']);
$level = "1";
$password = md5($password);
$insert = mysql_query("INSERT INTO users(username, password, email, ip, level) VALUES('$username', '$password', '$email', '$ip', '$level')")or die(mysql_error());
echo 'Здравей <b>' . $username . '</b>! Регистрацията е успешна!';
echo ("<meta http-equiv=\"refresh\" content=\"3; url=index.php\">");
}}
else
echo $errMsg;
mysql_close();
}
echo ('</div>
<div id="footer">
Copyright (c) <a href="http://web-tourist.net/forum/profile.php?mode=viewprofile&u=nom3r1"><b>nom3r1</b></a>
</div>
</div>
</center>
</body>
</html>');
?>
ето и само частта с проверките:
Код:
}
if (isset($_POST["submit"])) {
if (!empty($_POST["username"])) $username = htmlspecialchars($_POST["username"]);
else $errMsg = "Моля въведете потребител!<br />";
if (!empty($_POST["password"])) $password = htmlspecialchars($_POST["password"]);
else $errMsg = "Моля въведете парола!<br />";
if (!empty($_POST["email"])) $email = htmlspecialchars($_POST["email"]);
else $errMsg = "Моля въведете е-майл!<br />";
if (strlen($_POST['password']) < 6) $errMsg = "Паролата Ви е твърде къса!<br />";
if (empty($errMsg)) {
$chek = mysql_query("SELECT * FROM `users` WHERE `username`='$username'")or die(mysql_error()); //проверка да ли потребителя същестува
$chek = mysql_num_rows($chek);
if ($chek=='1') {
echo 'Този потребител вече е регистриран! <a href="?p=reg">Назад</a>'; //Изкарва резултат защото потребителя съществува
}
$chek2 = mysql_query("SELECT * FROM `users` WHERE `email`='$email'")or die(mysql_error()); //проверка да ли емайла е използван
$chek2 = mysql_num_rows($chek2);
if ($chek2=='1') {
echo 'Този емайл вече е бил използан от друг потребител!'; //Изкарва резултата защото вече има такъв емайл
}
Помагайте