![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 176 Pomógł: 0 Dołączył: 27.06.2002 Skąd: Stalowa Wola Ostrzeżenie: (0%) ![]() ![]() |
Mam skrypt do rejstracji uzytkownikow i mam jeden problem.
Ponizszy kod wykonuje formularz logowanie (login i password). jednka chcialbym dodac jeszcze w formularzu logowaniu checkboxa po wcisnieciu ktorego cookie sa ustawiane np. na 100 dni - a tym samym jak dana osoba wjdzie na moja stronke bedzie pokazany napis "witaj LOGIN"). Co dopisac do ponizszego kodu aby zalatwic te sprawe. Oraz jaki jeszcze zrobic skrypcik (aby po umieszczeniu w ktoryms miejscu na stronie) sprawdzal cookie i wyswietal albo: nie zalogowany albo witaj LOGIN. Prosze o pomoc. [php:1:0fbe713dbd] <? session_start(); // Start Session include 'db.php'; $username = $_POST['username']; $password = $_POST['password']; if((!$username) || (!$password)){ echo "Wypelnij formularze poprawnie! <br />"; include 'login_form.html'; exit(); } $password = md5($password); $sql = mysql_query("SELECT * FROM users WHERE username='$username' AND password='$password' AND activated='1'"); $login_check = mysql_num_rows($sql); if($login_check > 0){ while($row = mysql_fetch_array($sql)){ foreach( $row AS $key => $val ){ $$key = stripslashes( $val ); } session_register('first_name'); $_SESSION['first_name'] = $first_name; session_register('last_name'); $_SESSION['last_name'] = $last_name; session_register('email_address'); $_SESSION['email_address'] = $email_address; session_register('special_user'); $_SESSION['user_level'] = $user_level; mysql_query("UPDATE users SET last_login=now() WHERE userid='$userid'"); header("Location: login_success.php"); } } else { echo "Nie mozesz zostac zalogowany - nieprawidlowe dane!<br /> Sproboj jeszcze raz!<br />"; include 'login_form.html'; } ?>[/php:1:0fbe713dbd] |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 166 Pomógł: 0 Dołączył: 30.01.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
[php:1:30e959528a]<?php
session_start(); // Start Session include 'db.php'; $username = $_POST['username']; $password = $_POST['password']; if((!$username) || (!$password)){ echo "Wypelnij formularze poprawnie! <br />"; include 'login_form.html'; exit(); } $password = md5($password); $sql = mysql_query("SELECT * FROM users WHERE username='$username' AND password='$password' AND activated='1'"); $login_check = mysql_num_rows($sql); if($login_check > 0){ while($row = mysql_fetch_array($sql)){ foreach( $row AS $key => $val ){ $$key = stripslashes( $val ); } session_register('first_name'); $_SESSION['first_name'] = $first_name; session_register('last_name'); $_SESSION['last_name'] = $last_name; session_register('email_address'); $_SESSION['email_address'] = $email_address; session_register('special_user'); $_SESSION['user_level'] = $user_level; mysql_query("UPDATE users SET last_login=now() WHERE userid='$userid'"); //jeżeli zaznaczył pole to wysyłasz ciacho if($_POST['chkbox']=='on'){ setcookie("ciastko", $username, time()+3600*24*30); } header("Location: login_success.php"); } } else { echo "Nie mozesz zostac zalogowany - nieprawidlowe dane!<br /> Sproboj jeszcze raz!<br />"; include 'login_form.html'; } ?>[/php:1:30e959528a] teraz żeby na następnej stronie wyświetlić napis musisz sobie wrzucic taki kod : [php:1:30e959528a]<?php echo "Witaj ".$_COOKIE['ciastko']." !!"; ?>[/php:1:30e959528a] Teraz żeby wyswietlic albo niezalogowany albo witaj... musisz dac taki kod : [php:1:30e959528a]<?php if(isset($_COOKIE['ciastko'])){ echo "Witaj ".$_COOKIE['ciastko']." !!"; }else{ echo "Nie zalogowany!"; } ?>[/php:1:30e959528a] Tylko teraz takie małe ale, jeżeli użytkownik nie zaznaczy tego pola to skrypt będzie mu pisał że jest nie zalogowany - bo nie zostanie wysłane do niego ciastko, to samo będzie w momencie kiedy użytkownik nie akceptuje ciastek. Moim zdaniem skoro wykorzystujesz sesje przy tym logowaniu to lepiej przekazywac nazwe użytkownika własnie sesją. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 12:12 |