Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] Ranga
Forum PHP.pl > Forum > Przedszkole
Azonic
Witam, w systemie logowania stworzyłem sobie dodatkowe pole: Ranga oparte na bazie danych sprawa ma się tak:


Stworzyłem nowe pole w tabeli users ranga varchar(255)

Wyswietlanie:

  1. check_login();
  2.  
  3. // pobieramy dane usera
  4. $user_data = get_user_data();
  5.  
  6. $ranga=$user_data['ranga'];
  7. if ($ranga=="0") {echo 'Ranga: <font color="red">User</font>';}
  8. if ($ranga=="1") {echo 'Ranga: <font color="red">Admin</font>';}



Chciałbym aby podczas rejestracji skrypt automatycznie przypisywał użytkownikowi range==0


Skrypt rejestracji:
  1. // sprawdzamy czy user nie jest przypadkiem zalogowany
  2. if(!$_SESSION['logged']) {
  3. // jeśli zostanie naciśnięty przycisk "Zarejestruj"
  4. if(isset($_POST['name'])) {
  5. // filtrujemy dane...
  6. $_POST['name'] = clear($_POST['name']);
  7. $_POST['password'] = clear($_POST['password']);
  8. $_POST['password2'] = clear($_POST['password2']);
  9. $_POST['email'] = clear($_POST['email']);
  10.  
  11. // sprawdzamy czy wszystkie pola zostały wypełnione
  12. if(empty($_POST['name']) || empty($_POST['password']) || empty($_POST['password2']) || empty($_POST['email'])) {
  13. echo '<p>Musisz wypełnić wszystkie pola.</p>';
  14. // sprawdzamy czy podane dwa hasła są takie same
  15. } elseif($_POST['password'] != $_POST['password2']) {
  16. echo '<p>Podane hasła różnią się od siebie.</p>';
  17. // sprawdzamy poprawność emaila
  18. } elseif(filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) === false) {
  19. echo '<p>Podany email jest nieprawidłowy.</p>';
  20. } else {
  21. // sprawdzamy czy są jacyś uzytkownicy z takim loginem lub adresem email
  22. $result = mysql_query("SELECT Count(user_id) FROM `users` WHERE `user_name` = '{$_POST['name']}' OR `user_email` = '{$_POST['email']}'");
  23. $row = mysql_fetch_row($result);
  24. if($row[0] > 0) {
  25. echo '<p>Już istnieje użytkownik z takim loginem lub adresem e-mail.</p>';
  26. } else {
  27. // jeśli nie istnieje to kodujemy haslo...
  28. $_POST['password'] = codepass($_POST['password']);
  29. // i wykonujemy zapytanie na dodanie usera
  30. mysql_query("INSERT INTO `users` (`user_name`, `user_password`, `user_email`, `user_regdate`) VALUES ('{$_POST['name']}', '{$_POST['password']}', '{$_POST['email']}', '".time()."')");
  31. echo '<p>Zostałeś poprawnie zarejestrowany! Możesz się teraz <a href="login.php">zalogować</a>.</p>';
  32. }
  33. }
  34. }


Pozdrawiam
slash^
Tworząc tabele w mysql ustaw na to pole domyślną wartość:

  1. CREATE TABLE IF NOT EXISTS `aaa` (
  2. `id` int(11) NOT NULL,
  3. `range` varchar(255) NOT NULL DEFAULT '0'
  4. )



w phpmyadmin: struktura -> ustawienia domyślne -> zdefiniowane następująco -> wpisz 0
nospor
ps: skoro ranga to liczba to czemu robisz z tego VARCHAR i to na dodatek 255?
`range` tinyint NOT NULL DEFAULT 0
Azonic


Dzięki za odpowiedzi, pomogło ++
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.