Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Sprawdzanie czy użytkownik aktywował konto
unlucky1
post 8.07.2018, 15:20:27
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 8.07.2018

Ostrzeżenie: (0%)
-----


Witam,
zrobiłem skrypt rejestracji z potwierdzeniem maila, wszystko działa, ale mam jeden problem, otóż, sprawdzanie czy użytkownik aktywował konto nie działa, moja znajomość języka php jest na dość niskim poziomie, dlatego ćwiczę robiąc takie skrypty.

otóż robię to tak:
pobieram login z formularza logowania
  1. $login = htmlspecialchars(mysql_real_escape_string($_POST['login']));


następnie pobieram wartość kolumny zawierającej informacje na temat aktywowanego konta:
  1. $active = mysql_query("Select u_aktywny from users WHERE login = '$login' ");


później funkcja if (nie wiem czy to odpowiednia funkcja) sprawdza czy zmienna jest równa 0 jeśli tak to pokazuje informację na temat aktywacji konta:
  1. if ($active == 0) {
  2. die ('<p class="error"><b><font color="red">Aktywuj konto zanim się zalogujesz !!!</font></b></p>');
  3. }



zamiast sprawdzić czy użytkownik ma aktywowane konto to on po prostu go loguje, bez sprawdzania czy jest 1- aktywowane czy nie - 0.
czy mógłby ktoś mi pomóc rozwiązać ten problem ?


EDIT: Proszę sobie darować komentarze typu, "Przede wszystkim poczytaj", "Sam się naucz" itd.

Ten post edytował unlucky1 8.07.2018, 16:19:21
Go to the top of the page
+Quote Post
Pyton_000
post 8.07.2018, 16:02:45
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Przede wszystkim poczytaj: http://www.php.net/mysql_query
Go to the top of the page
+Quote Post
unlucky1
post 8.07.2018, 16:26:58
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 8.07.2018

Ostrzeżenie: (0%)
-----


Temat do zamknięcia, problem rozwiązany:
  1. $zapytanie = "SELECT `u_aktywny` FROM `users` WHERE `login` = '$login';" ;
  2. $active = mysql_query($zapytanie);
  3. $active1 = mysql_result($active,0) ;


oraz
  1. if ($active1 == 0) {
  2. die ('<p class="error"><p align="center"><b><font color="gold"><font size="5">Aktywuj konto zanim się zalogujesz !!!</font></font></b></p></p>');
  3. }
Go to the top of the page
+Quote Post
Pyton_000
post 8.07.2018, 17:14:31
Post #4





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Cytat(unlucky1 @ 8.07.2018, 16:20:27 ) *
EDIT: Proszę sobie darować komentarze typu, "Przede wszystkim poczytaj", "Sam się naucz" itd.

Nie skomentuję tego bo to źle świadczy o tobie.
Go to the top of the page
+Quote Post
viking
post 8.07.2018, 17:34:31
Post #5





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Skoro się uczysz to przede wszystkim powinieneś słuchac bardziej doswiadczonych. A pod linkiem masz jak byk:

Cytat
Warning

This extension was deprecated in PHP 5.5.0, and it was removed in PHP 7.0.0. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API guide and related FAQ for more information. Alternatives to this function include:

mysqli_query()
PDO::query()


Wersja 5.6 ma już prawie 4 lata czyli stosujesz archaiczny kod. I do tego podatny na sql injection.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.04.2024 - 20:39