Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP][NIEROZWIĄZANY] Wartość pola - jeśli się zgadza skrypt rejestruje użytkownika.
Casley
post
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 5.01.2014

Ostrzeżenie: (10%)
X----


Witam!
Chciałbym zapytać czy ktoś z Was pomógłby mi w stworzeniu zapytania, które sprawdzi czy wartość podana w polu podczas rejestrowania znajduje się w bazie (osobna baza z kodami). Jeśli się znajduje, to rejestruje użytkownika, natomiast jeśli nie ma jej to nie rejestruje. Przerobiłem sobie trochę gotowy skrypt. Działa u mnie to teraz tak, że jeśli nie ma takiej wartości w bazie to rejestruje, jeśli jest to nie rejestruje. Chcę zrobić strone na której użytkownik będzie mógł się zarejestrować tylko wtedy, kiedy wprowadzi w odpowiednie pole otrzymany kod od moderatora.

Mój kod:
  1. <?php
  2. //łączenie z baza danych
  3. mysql_connect('localhost', 'MOJ LOGIN', 'MOJE HASLO') or die(mysql_error());
  4. //wybieramy bazę danych
  5. mysql_select_db('w324_ja') or die(mysql_error());
  6.  
  7. ?>
  8. <?PHP
  9.  
  10. echo '<form method="post" action="skrypt.php?akcja=wykonaj">
  11.  
  12. <table><tr>
  13. <td>Nazwa: </td><td><input type="text" name="nick" /></td></tr><br>
  14. <tr><td>Hasło: </td><td><input type="password" name="haslo" /></td></tr><br>
  15. <tr><td>Powtórz hasło: </td><td><input type="password" name="vhaslo" /></td></tr><br>
  16. <tr><td>Email: </td><td><input type="text" name="email" /></td></tr><br>
  17. <tr><td>Powtórz email: </td><td><input type="text" name="vemail" /></td></tr><br>
  18. <td>Kod: </td><td><input type="text" name="kod" /></td></tr><br>
  19.  
  20. <tr><td></td><td><input type="submit" value="Zarejestruj"></td></tr></table>
  21. </form> ';
  22.  
  23. $akcja = $_GET['akcja'];
  24. if ($akcja == wykonaj) {
  25. $nick = substr(addslashes(htmlspecialchars($_POST['nick'])),0,32);
  26. $haslo = substr(addslashes($_POST['haslo']),0,32);
  27. $vhaslo = substr($_POST['vhaslo'],0,32);
  28. $email = substr($_POST['email'],0,32);
  29. $vemail = substr($_POST['vemail'],0,32);
  30. $kod = substr(addslashes($_POST['kod']),0,32);
  31. $kod = trim($kod);
  32. $nick = trim($nick);
  33. //
  34. $nick = substr(addslashes(htmlspecialchars($_POST['nick'])),0,32);
  35. $haslo = substr(addslashes($_POST['haslo']),0,32);
  36. $vhaslo = substr($_POST['vhaslo'],0,32);
  37. $email = substr($_POST['email'],0,32);
  38. $vemail = substr($_POST['vemail'],0,32);
  39. $kod = substr(addslashes($_POST['kod']),0,32);
  40. $kod = trim($kod);
  41. $nick = trim($nick);
  42. //kilka sprawdzen co do nicku i maila
  43. $spr1 = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM info WHERE nick='$nick' LIMIT 1")); //czy user o takim nicku istnieje
  44. $spr2 = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM info WHERE email='$email' LIMIT 1")); // czy user o takim emailu istnieje
  45. $spr6 = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM info WHERE kod='$kod' LIMIT 1")); //czy taki kod istnieje
  46. $pos = strpos($email, "@");
  47. $pos2 = strpos($email, ".");
  48. $emailx = explode("@", $email);
  49. if ($emailx[1] == 'o2.pl') {
  50. $emailx1 = $emailx[0].'@go2.pl';
  51. $emailx2 = $emailx[0].'@tlen.pl';
  52. $spr3 = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM info WHERE email='$emailx1' OR `email`='$emailx2' LIMIT 1"));
  53. }elseif ($emailx[1] == 'go2.pl') {
  54. $emailx1 = $emailx[0].'@o2.pl';
  55. $emailx2 = $emailx[0].'@tlen.pl';
  56. $spr3 = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM info WHERE email='$emailx1' OR `email`='$emailx2' LIMIT 1"));
  57. }elseif ($emailx[1] == 'tlen.pl') {
  58. $emailx1 = $emailx[0].'@go2.pl';
  59. $emailx2 = $emailx[0].'@o2.pl';
  60. $spr3 = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM info WHERE email='$emailx1' OR `email`='$emailx2' LIMIT 1"));
  61. }
  62. $komunikaty = '';
  63. $spr4 = strlen($nick);
  64. $spr5 = strlen($haslo);
  65. //sprawdzenie co uzytkownik zle zrobil
  66. if (!$nick || !$email || !$haslo || !$vhaslo || !$vemail || !$kod) {
  67. $komunikaty .= "<font size='3'>Musisz wypelnic wszystkie pola!</font><br>"; }
  68. if ($spr4 < 3) {
  69. $komunikaty .= "<font size='3'>Login musi mieć przynajmniej 3 znaki</font><br>"; }
  70. if ($spr5 < 4) {
  71. $komunikaty .= "<font size='3'>Hasło musi mieć przynajmniej 4 znaki</font><br>"; }
  72. if ($spr1[0] >= 1) {
  73. $komunikaty .= "<font size='3'>Ten login jest zajęty!</font><br>"; }
  74. if ($spr2[0] >= 1) {
  75. $komunikaty .= "<font size='3'>Ten e-mail jest już używany!</font><br>"; }
  76. if ($email != $vemail) {
  77. $komunikaty .= "<font size='3'>E-maile się nie zgadzają ...</font><br>";}
  78. if ($haslo != $vhaslo) {
  79. $komunikaty .= "<font size='3'>Hasła się nie zgadzają ...</font><br>";}
  80. if ($pos == false OR $pos2 == false) {
  81. $komunikaty .= "<font size='3'>Nieprawidłowy adres e-mail</font><br>"; }
  82. if ($spr3[0] >= 1) {
  83. $komunikaty .= "<font size='3'>Nie można zarejestrować kilku kont na jedną poczte o2.</font><br>"; }
  84. if ($spr6[0] >= 1) {
  85. $komunikaty .= "<font size='3'>Ten kod jest zajęty!</font><br>"; }
  86.  
  87. //jesli cos jest nie tak to blokuje rejestracje i wyswietla bledy
  88. if ($komunikaty) {
  89. <font size="3"><br><br>Popraw blędy:<br>
  90. '.$komunikaty.'<br>';
  91. } else {
  92. //jesli wszystko jest ok dodaje użytkownika i wyswietla informacje
  93. $nick = str_replace ( ' ','', $nick );
  94.  
  95. mysql_query("INSERT INTO `info` (nick, haslo, email, kod)
  96. VALUES('$nick','$haslo','$email','$kod')") or die("Nie mogłem Cię zarejestrować!");
  97.  
  98. echo '<br><font size="3">Zostałes zarejestrowany jako '.$nick.'.</font>';
  99. }
  100. }
  101.  
  102. ?>


Ten post edytował Casley 6.01.2014, 12:41:46
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 23.08.2025 - 22:25