Stworzenie panelu rejestracji i logowania


(Gokoko) #1

Mam pytanie jak stworzyć panel rejestracji i logowania taki jak jest na naszej-klasie coś w tym stylu.


(pain3hp) #2

jesli chcesz to stworzyć sam to wymaga napewno wiekszej lektury oraz szerzej pojetego programowania, musisz zrozumiec kilka rozwiazań :]

teoretycznie wyglada to tak:

rejestracja to zwyczajny formularz który bedzie wysyłał informacje wprowadzone w rózne pola do bazy, nastepnie wypada zrobić kilka zabezpieczeń czyli mail, zatwierdzenie formularza == wysłanie wiadomosci na wprowadzony mail wraz z kluczem aktywacyjnym który bedzie tworzył jakiś algorytm (losowo) i wypełniał jego wartością jedno pole w bazie. W bazie potrzeba także pola czy user jest już aktywowany czy nie (0 lub 1, przykładowo). Oczywiście aktywacja to kliknięcie w ten link czyli przestawienie wartości w polu w/w.

Logowanie to nic innego jak dwa pola w formularzu które po zatwierdzeniu proszą dane z bazy, jeśli się zgadzają to serwer wysyła informację do przeglądarki w postaci sesji (tablica). Przeglądarka sobie bierze tą sesję do pamięci i w ten sposób komputer wie że jesteś zalogowany, następnie na stronie wprowadzasz sobie skrypty np w PHP z różnorakimi instrukcjami warunkowymi tworzącymi odpowiednia strone dla zalogowanych i dla niezalogowanych. Wologowanie to nic innego jak destrukcja sesji

zawodowcem w tym nie jestem wiec moge sie mylic :stuck_out_tongue: ale zycze powodzenia, jak dla nowicjusza to nie jest prosty temat, jesli chcesz sie uczyc programowac strony to zacznij poprostu od prostszych formularzy np różnorakie kalkulatory, potem troche poćwicz mysqla az dojdziesz krok po kroku do sesji, ciastek a potem to juz bedzie pisanie takich skryptow z palca :stuck_out_tongue:

powodzenia :smiley:


(system) #3

Jak się domyślam za bardzo PHP nie znasz, więc rzucasz się na głęboką wodę, ale trzeba próbować :wink:

Poczytaj tutaj: http://4programmers.net/PHP/Prosty_skrypt_logowania


(Gokoko) #4

Na czy stronę chce robić w html i teraz na stronę potrzebuje takiego systemu rejestracji jak i logowania jak na naszej-klasie bo w przyszłości chce dodać opcje znajdowania znajomych i ich dodawania do znajomych jak i możliwość dodawania zdjęć na swój profil równierz na samym początku chce zrobić tak aby wejść na stronę to trzeba będzie się zarejestrować a potem zalogować tak jak ma to miejsce na nk! !!


(system) #5

Więc bierz się za naukę php, bo na dłuższą metę to nie ma sensu. No chyba, że masz jakieś fundusze do zainwestowania, wtedy zleć komuś napisanie tego skryptu.

Zacznij używać znaków interpunkcyjnych bo ciężko się czyta Twoje wypowiedzi.


(Gokoko) #6

<?php

include (‘includes/config_includes.php’); // Odniesienie Do pliku który łączy nas z DB

//jesli byl wyslany formularz przechodzimy do obsługi danych

if(isset($_POST[‘wyslij’]))

{

//Obrabiamy wszystkie zmienne przekazane metodą POST

foreach ($_POST AS $klucz => $wartosc)

{

$wartosc= trim($wartosc);//usuwamy białe znaki

if (get_magic_quotes_gpc())

$wartosc= stripslashes($wartosc);

$wartosc=htmlspecialchars($wartosc, ENT_QUOTES);

$_POST[$klucz]=$wartosc;

}

$login=$_POST[‘login’];

$haslo=$_POST[‘haslo’];

$re_haslo=$_POST[‘re_haslo’];

$email=$_POST[‘email’];

$blad_txt=’’;

$blad=false;

//Sprawdzamy czy użytkownik o danym Loginie nie jest juz zajęty

$zapytanie_sprawdz_usera= "select * from users where user_name=’$login’ ";

$wynik = mysql_query($zapytanie_sprawdz_usera);

if(!$wynik)

{

echo 'Przepraszamy rejestracja w tej chwili jest nie mozliwa. Prosze spróbowac pozniej

.’;

exit;

}

if(mysql_num_rows($wynik)>0)

{

$sprawdz_login=1;

}

// Sprawdzamy czy adres email sie nie powtarza.

$zapytanie_sprawdz_email= "select * from users where user_email =’$email’ ";

$wynik_email = mysql_query($zapytanie_sprawdz_email);

if(!$wynik_email)

{

echo 'Przepraszamy rejestracja w tej chwili jest nie mozliwa. Prosze spróbowac pozniej

.’;

exit;

}

if(mysql_num_rows($wynik_email)>0)

{

$sprawdz_email=1;

}

//sprawdzamy czy poprawnie jest wypełnine pole login

if(empty($login)){

$info_txt_nick.=’ x.gif

$blad=true;

}

else if($sprawdz_login==1){

$info_txt_nick.=’ x.gif

$blad=true;

}

else if(strlen($login)5){

$info_txt_nick.=‘Login jest za krótki.’;

$blad=true;

}

else if(strlen($login)12){

$info_txt_nick.=’ x.gif

$blad=true;

}

else{

$info_txt_nick.=’ v.gif

}

//sprawdzamy czy jest prawidlowe haslo

if(empty($haslo)){

$info_txt_haslo.=’ x.gif

$blad=true;

}

else if(strlen($haslo)=6) {

$info_txt_haslo.=’ x.gif

$blad=true;

}

else if(strlen($haslo)16){

$info_txt_haslo.=’ x.gif

$blad=true;

}

else{

$info_txt_haslo.=’ v.gif

}

//sprawdzamy czy jest 2 hasło

if(empty($re_haslo)){

$info_txt_re_harlo.=’ x.gif

$blad=true;

}

else if($haslo != $re_haslo){

$info_txt_re_harlo.=’ x.gif

$blad=true;

}

else{

$info_txt_re_harlo.=’ v.gif

}

//sprawdzamy czy jest podany prawidłowy adres e-mail

if(empty($email)){

$info_txt_email.=’ x.gif

$blad=true;

}

else if($sprawdz_email==1){

$info_txt_email.=’ x.gif

$blad=true;

}

else if(!preg_match(’|^[_a-z0-9.-]*[a-z0-9]@[_a-z0-9.-]*[a-z0-9].[a-z]{2,3}$|e’, $email)){

$info_txt_email.=’ x.gif

$blad=true;

}

else{

$info_txt_email.=’ v.gif

}

if(!$blad)

{

//poprawne dane - robmy z nimi co trzeba (zapisujemy do bazy danych itp.)

$pokaz_form=true;

// Wysyłamy zapytanie do bazy danych

$zapytanie_add_user = “INSERT INTO users values(NULL, '”.$login."’, ‘".sha1($haslo)."’, ‘".$haslo."’, ‘".$email."’)";

// Odpowiedz

$odpowiedz = mysql_query($zapytanie_add_user);

if($odpowiedz 0){

echo 'Rojestracja przebiegła pomyślnie do konca.

  • Twój nick to: ‘.$login.’
  • haslo: ‘.$haslo.’
  • re_haslo: ‘.$re_haslo.’
  • email: ‘.$email.’
    ';

}

else{

$pokaz_form=false;

echo ‘Problem z MySQL.’;

}

}

else

{

//cos jest zle – wyświetlamy stosowne komunikaty

// echo $blad_txt;

$pokaz_form=false;

}

}

else

{

//wypelniamy zmienne pustymi danymi jesli formularz nie został jeszcze wysłany

$login=’’;

$imie=’’;

$nazwisko=’’;

$haslo=’’;

$re_haslo=’’;

$email=’’;

}

//wyswietlamy formularz

if($pokaz_form!=true){

?

table.form{

margin-left: 120px;

font-size: 12px;

}

td.title{

vertical-align: bottom;

text-align: right;

}

td.info{

vertical-align: bottom;

text-align: left;

}

REJESTRACJA

Login:

? echo $info_txt_nick; ?

Imię:

? echo $info_txt_imie; ?

Nazwisko:

? echo $info_txt_nazwisko; ?

E-Mail:

? echo $info_txt_email; ?

Hasło:

? echo $info_txt_haslo; ?

Powtórz Hasło:

? echo $info_txt_re_harlo; ?

?

}

else{

return false;

}

?

stworzyłem taki system logowania jak coś jest źle to poprawcie i jak zrobić do tego bazę MySQL i system logowania no i ma to być tak aby zanim można było wejść na stronę trzeba było się najpierw zalogować lub zarejestrować ??Licze ze poprawicie błędy i pomozecie w stworzeniu bazy MySQL jak i systemu logowania itp.

Dodane 24.06.2010 (Cz) 7:45

Jak stworzyć również do rejestracji aby trzeba było kliknąć w email i potwierdzić rejestracje??

Dodane 24.06.2010 (Cz) 7:48

Jak zrobić aby ten system rejestracji był bezpieczny i automatycznie dodawało do bazy danych użytkowników??


(Monczkin) #7

xxxkornelxxx , umieść kody na zewnętrznym serwerze. Przeczytaj ten temat http://forum.dobreprogramy.pl/viewtopic.php?f=16&t=394978


(pain3hp) #8

widać że nie masz o tym zielonego pojęcia dlatego pomaganie tobie to jak walenie głową w mur. Zacznij od podstaw


(reyder) #9

Nie przypisuj sobie czyjejś pracy! Nie ty napisałeś ten skrypt, nie masz zielonego pojęcia o php i chcesz, żeby ktoś za ciebie napisał cały skrypt.