Нещо се оплеска със сесиите

C++ JAVA
vladislav
Турист
Турист
Posts: 504
Joined: Mon Aug 14, 2006 10:26 am
Answers: 22
Location: Пазарджик
Contact:

Нещо се оплеска със сесиите

Post by vladislav » Wed Sep 06, 2006 7:50 pm

form.html

Code: Select all

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><title></title>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251"></head>
<body>
<table width="150"><tr><td align="center"><form method="post" action="register.php"><p align="center">Регистрация</p>
Потребителско име&#58;<br><input type="text" name="username"><br>
Парола&#58;<br><input type="password" name="password"><br>
E-mail Адрес&#58;<br><input type="text" name="email"><br>
Skype име&#58;<br><input type="text" name="skype"><br>
Лична информация&#58;<br><input type="text" name="info"><br>
<input type="submit" value="Изпрати"><br><br><font size="2" color="red"><i>Всияки полета са задължителни! Моля попълнете ги!</i></font>
</form></td></tr></table>
</body>
</html>
register.php

Code: Select all

<?php
$usrename=$_POST&#91;'username'&#93;;
$password=$_POST&#91;'password'&#93;;
$email=$_POST&#91;'email'&#93;;
$skype=$_POST&#91;'skype'&#93;;
$info=$_POST&#91;'info'&#93;;
?>
<?php
include &#40;"confing.php"&#41;;
if&#40;$username and $password and $email and $skype and $info&#41;
&#123;$connect=@mysql_connect&#40;"$host", "$user", "$pass"&#41; or die&#40;"Грешка"&#41;;
$var=@mysql_select_db&#40;'register', $connect&#41; or die &#40;"Грешка"&#41;;
$zaiavka="insert into users &#40;username, password, email, skype, info&#41; values &#40;\"$username\", \"$password\", \"$email\", \"$skype\", \"$info\"&#41;";
$var=mysql_query&#40;$zaiavka, $connect&#41;;
if&#40;$var&#41;
&#123;echo&#40;"Регистрацията ви завърши успешно!За да влезете с потребителското си име и парола натиснете <a href=login.php>Тук</a>"&#41;;&#125;
&#125;
?>
login.php

Code: Select all

<? 
session_start&#40;&#41;; 
?> 
<?PHP 
include &#40;"confing.php"&#41;;
if&#40;$_POST&#91;'login'&#93; == 1&#41; 
&#123; 
$username = $_POST&#91;'username'&#93;; 
$password = $_POST&#91;'password'&#93;; 
$connect =$connect=@mysql_connect&#40;"$host", "$user", "$pass"&#41; or die&#40;"Грешка"&#41;; 
@mysql_select_db&#40;"register"&#41; or die &#40; 'Грешка' &#41;; 
$query = mysql_query&#40;"SELECT * FROM users WHERE username = '$username' AND password = '$password' LIMIT 1"&#41;; 
if&#40;mysql_num_rows&#40;$query&#41; == 0&#41; 
&#123; 
echo "Грешна парола или потребителско име!"; 
&#125; 
else 
&#123; 
$row = mysql_fetch_array&#40;$query&#41;; 
echo "Здравейте ".$row&#91;'username'&#93;."! Приятно сърфиране! "; 
echo "<br><a href=pro.php>NEXT</a>"; 
&#125; 
&#125; 
else 
&#123; 
session_register&#40;'username'&#41;; 
$_SESSION&#91;'username'&#93; = $username;
 
?> 
 
<? 
&#125; 
?> 
login.html

Code: Select all

<html> 
<head> 
<title>Login</title> 
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> 
</head> 
<body> 
<form name="form1" method="post" action="login/login.php"> 
<input name="login" type="hidden" value="1"> 
<table width="185"  height="140"border="0"> 
<tr> 
<td>Потребител</td> 
<td><input type="text" name="username"></td> 
</tr> 
<tr> 
<td>Парола</td> 
<td><input type="password" name="password"></td> 
</tr> 
<tr align="center"> 
<td colspan="2"><input type="submit"  value="Влез"><br><br><font size="2">Ако не си регистриран , можеш да го направиш <a href="login/form.html">Тук</font></a></td> 
</tr> 
</table> 
</form> 
</body> 
</html>
pro.php

Code: Select all

<? 
session_start&#40;&#41;; 
$_SESSION&#91;'username'&#93; = $username;
if &#40;isset&#40;$HTTP_SESSION_VARS&#91;'username'&#93;&#41;&#41; 
&#123; 
echo "Здравейте, $username! <br>Това е вашия личен профил&#58;<br><br>";
&#125; else &#123; echo "Нямате достъп до тази страница!"; 

exit; 
&#125; 

$con = mysql_connect&#40;"localhost","root","vladi"&#41;;
if &#40;!$con&#41;
  &#123;
  die&#40;'Could not connect&#58; ' . mysql_error&#40;&#41;&#41;;
  &#125;

mysql_select_db&#40;"register", $con&#41;;

$result = mysql_query&#40;"SELECT * FROM users
WHERE username='$username'"&#41;;

while&#40;$row = mysql_fetch_array&#40;$result&#41;&#41;
  &#123;
  echo &#40;"<font color=red>Потребителско име&#58; </font>".$row&#91;'username'&#93;."<br>"&#41;;
  echo &#40;"<font color=red>Email адрес&#58; </font>".$row&#91;'email'&#93;."<br>"&#41;;
  echo &#40;"<font color=red>Skype име&#58; </font>".$row&#91;'skype'&#93;."<br>"&#41;;
  echo &#40;"<font color=red>Лична информация&#58; </font>".$row&#91;'info'&#93;."<br><hr>"&#41;;
  echo &#40;"Ако искате да смените паролата си , натиснете <a href=change.html>ТУК</a>"&#41;; 
  &#125;

?> 
Значи първия пътт като реша да влезна ми пише здравейте едикой си нехст и после нямате достъп до тази страница и вече втория оът е нормално????????????????????

vladislav
Турист
Турист
Posts: 504
Joined: Mon Aug 14, 2006 10:26 am
Answers: 22
Location: Пазарджик
Contact:

Post by vladislav » Wed Sep 06, 2006 8:19 pm

Моля ви помагайте тоя проблем немога да го отсраня моляви!!!!!!!!!!!!!!!
:shock: :cry:

User avatar
cheppo
Нов
Нов
Posts: 42
Joined: Sat Jun 24, 2006 8:39 am
Contact:

Post by cheppo » Thu Sep 07, 2006 5:33 am

ето сега ти ги правя според мен как да изглеждат PHP файловете:
register.php

Code: Select all

<?php
$username=$_POST&#91;'username'&#93;; //Беше написал $usrename
$password=$_POST&#91;'password'&#93;;
$email=$_POST&#91;'email'&#93;;
$skype=$_POST&#91;'skype'&#93;;
$info=$_POST&#91;'info'&#93;;  //Няма смисъл да са два PHP кода
include &#40;"confing.php"&#41;;
if&#40;$username and $password and $email and $skype and $info&#41;
&#123;$connect=@mysql_connect&#40;"$host", "$user", "$pass"&#41; or die&#40;"Грешка"&#41;;
$var=@mysql_select_db&#40;'register', $connect&#41; or die &#40;"Грешка"&#41;;
$zaiavka="insert into users &#40;username, password, email, skype, info&#41; values &#40;\"$username\", \"$password\", \"$email\", \"$skype\", \"$info\"&#41;";
$var=mysql_query&#40;$zaiavka, $connect&#41;;
if&#40;$var&#41;
&#123;echo&#40;"Регистрацията ви завърши успешно!За да влезете с потребителското си име и парола натиснете <a href=login.php>Тук</a>"&#41;;&#125;
&#125;
?>
login.php

Code: Select all

<?php
include &#40;"confing.php"&#41;;
if&#40;$_POST&#91;'login'&#93; == 1&#41;
&#123;
$username = $_POST&#91;'username'&#93;;
$password = $_POST&#91;'password'&#93;;
$connect =@mysql_connect&#40;"$host", "$user", "$pass"&#41; or die&#40;"Грешка"&#41;;
$connect =@mysql_select_db&#40;"register"&#41; or die &#40; 'Грешка' &#41;;
$zaiavka = "SELECT * FROM users WHERE username = '$username' AND password = '$password' LIMIT 1";
$query = mysql_query&#40;$zaiavka, $connect&#41;;
if&#40;mysql_num_rows&#40;$query&#41; == 0&#41;
&#123;
echo "Грешна парола или потребителско име!";
&#125;
else
&#123;
session_start&#40;&#41;;
$_SESSION&#91;'user'&#93;= $user;
$row = mysql_fetch_object&#40;$query&#41;;
$username = $row -> username;
echo "Здравейте\ ".$username\"! Приятно сърфиране! ";
echo "<br><a href=pro.php>NEXT</a>";
&#125;
&#125;//Прегледай си пак кода може и аз някъде да съм сбъркал
&#125;
pro.php

Code: Select all

<?php
session_start&#40;&#41;;
if &#40;isset&#40;$_SESSION&#91;'user'&#93;&#41;&#41; &#123;
&#123;
echo "Здравейте, $username! <br>Това е вашия личен профил&#58;<br><br>";
&#125;
else &#123; echo "Нямате достъп до тази страница!";
exit&#40;&#41;;
&#125;
$conn = mysql_connect&#40;"localhost","root","vladi"&#41;
or die &#40;"Could not connect&#58;  . mysql_error&#40;&#41;&#41;"&#41;;
$conn=mysql_select_db&#40;"register"&#41;;
$result = mysql_query&#40;"SELECT * FROM users
WHERE username='$username' ", $conn&#41;
or die &#40;"Error"&#41;;
while&#40;$row = mysql_fetch_array&#40;$result&#41;&#41;
&#123;
  echo &#40;"<font color=red>Потребителско име&#58; </font>\".$row&#91;'username'&#93;.\"<br>"&#41;;
  echo &#40;"<font color=red>Email адрес&#58; </font>\".$row&#91;'email'&#93;.\"<br>"&#41;;
  echo &#40;"<font color=red>Skype име&#58; </font>\".$row&#91;'skype'&#93;\."<br>"&#41;;
  echo &#40;"<font color=red>Лична информация&#58; </font>\".$row&#91;'info'&#93;.\"<br><hr>"&#41;;
  echo &#40;"Ако искате да смените паролата си , натиснете <a href=change.html>ТУК</a>"&#41;;
  &#125; //може да има грешки оправи си ги
?>

User avatar
NetCutter
Потребител
Потребител
Posts: 1242
Joined: Mon Jan 09, 2006 9:54 am
Location: In Your Hard Drive!!!
Contact:

Post by NetCutter » Thu Sep 07, 2006 5:43 am

cheppo,тов ае друга логин система!
Я кажи каква грешка ти дава!Много по-трудно е да търсиме грешката на сляпО!

Slavei
Турист
Турист
Posts: 528
Joined: Mon Aug 21, 2006 6:04 pm

Re: Нещо се оплеска със сесиите

Post by Slavei » Thu Sep 07, 2006 6:17 am

vladislav wrote:form.html

login.php

Code: Select all

<? 
session_start&#40;&#41;; 
?> 
<?PHP 
include &#40;"confing.php"&#41;;
if&#40;$_POST&#91;'login'&#93; == 1&#41; 
&#123; 
$username = $_POST&#91;'username'&#93;; 
$password = $_POST&#91;'password'&#93;; 
$connect =$connect=@mysql_connect&#40;"$host", "$user", "$pass"&#41; or die&#40;"Грешка"&#41;; 
@mysql_select_db&#40;"register"&#41; or die &#40; 'Грешка' &#41;; 
$query = mysql_query&#40;"SELECT * FROM users WHERE username = '$username' AND password = '$password' LIMIT 1"&#41;; 
if&#40;mysql_num_rows&#40;$query&#41; == 0&#41; 
&#123; 
echo "Грешна парола или потребителско име!"; 
&#125; 
else 
&#123; 
$row = mysql_fetch_array&#40;$query&#41;; 
echo "Здравейте ".$row&#91;'username'&#93;."! Приятно сърфиране! "; 
echo "<br><a href=pro.php>NEXT</a>"; 
&#125; 
&#125; 
else 
&#123; 
session_register&#40;'username'&#41;; 
$_SESSION&#91;'username'&#93; = $username;
 
?> 
 
<? 
&#125; 
?> 
Значи първия пътт като реша да влезна ми пише здравейте едикой си нехст и после нямате достъп до тази страница и вече втория оът е нормално????????????????????
прегледах набързо по горния код:

Code: Select all

$connect =$connect=@mysql_connect&#40;"$host", "$user", "$pass"&#41; or die&#40;"Грешка"&#41;;
- не е ли излишно едното конект?

Code: Select all

$row&#91;'username'&#93;
- това от де го зима? май трябва да добавиш първо това:

Code: Select all

$row = mysql_fetch_array&#40;$result&#41;;
аре, успех, че закъснявам за изпит. Стискайте палци :)

vladislav
Турист
Турист
Posts: 504
Joined: Mon Aug 14, 2006 10:26 am
Answers: 22
Location: Пазарджик
Contact:

Post by vladislav » Thu Sep 07, 2006 10:57 am

Не ства и нестава проблема съм го написал първия път като пусна браузтра и реша да се логна и се логвам пишеми приятно сърфиране и нехст и после ми пише че нямам достъп до страницата се едно не сам се логнал а сам се логнал :cry: :cry: :cry: :cry: :cry: :cry: [/quote]

Slavei
Турист
Турист
Posts: 528
Joined: Mon Aug 21, 2006 6:04 pm

Post by Slavei » Thu Sep 07, 2006 11:10 am

vladislav wrote:Не ства и нестава проблема съм го написал първия път като пусна браузтра и реша да се логна и се логвам пишеми приятно сърфиране и нехст и после ми пише че нямам достъп до страницата се едно не сам се логнал а сам се логнал :cry: :cry: :cry: :cry: :cry: :cry:
[/quote]

ей така го направи про.пхп

Code: Select all

<? 
session_start&#40;&#41;; 
if &#40;isset&#40;$HTTP_SESSION_VARS&#91;'username'&#93;&#41;&#41; &#123; 
$username = $_SESSION&#91;'username'&#93;; 
echo "Здравейте, $username! <br>Това е вашия личен профил&#58;<br><br>"; 
&#125; else &#123; echo "Нямате достъп до тази страница!"; 

exit; 
&#125;
...................

vladislav
Турист
Турист
Posts: 504
Joined: Mon Aug 14, 2006 10:26 am
Answers: 22
Location: Пазарджик
Contact:

Post by vladislav » Thu Sep 07, 2006 11:20 am

за съжаление не става същия проблем

vladislav
Турист
Турист
Posts: 504
Joined: Mon Aug 14, 2006 10:26 am
Answers: 22
Location: Пазарджик
Contact:

Post by vladislav » Thu Sep 07, 2006 12:00 pm

Напрвао ще полудея проверих всичко от първия до последния ред и не откривам неточности. Сигърен сум че проблема е във тъпите сесии от които нищо неразбирам. Но немога да си обесня защоо първия път нестава а после няма проблеми? Пробвах с оригиналните скриптове и пак същото значи не е от модификациите които съм направил ползвам скриптовете от уриците в WTи ги надградих малко както исках да ми стане и не си спомням първия път да имах такъв проблем като ги изпробвах. Просто неззнам тази логин система си ми харесваше ама...... :o :o :o :o :o :o

Slavei
Турист
Турист
Posts: 528
Joined: Mon Aug 21, 2006 6:04 pm

Post by Slavei » Thu Sep 07, 2006 9:42 pm

vladislav wrote:Напрвао ще полудея проверих всичко от първия до последния ред и не откривам неточности. Сигърен сум че проблема е във тъпите сесии от които нищо неразбирам. Но немога да си обесня защоо първия път нестава а после няма проблеми? Пробвах с оригиналните скриптове и пак същото значи не е от модификациите които съм направил ползвам скриптовете от уриците в WTи ги надградих малко както исках да ми стане и не си спомням първия път да имах такъв проблем като ги изпробвах. Просто неззнам тази логин система си ми харесваше ама...... :o :o :o :o :o :o
Щом не ти работи кода, дето ползваш за пример, защо по дяволите не си намериш друга статия в нета и да си я изградиш отначало?!?
Това е нещо стандартно и на всякъде има информация как се прави.

И след като си проверил кода, не можа ли да го пуснеш с корекциите, а?
опа, сега видях, че си написал, че не си открил "неточности"

за pro.php-то съм казал, къде ти е грешката
в login.php - не създаваш сесия, затова не ти работи! Създай я при логване и ще тръгне.
в register също имаш грешка. Не ти записва името на потребителя в базата понеже си объркал името на променливата.

Post Reply