Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Skrypt rejestracji = problem
webświr
post
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 19.03.2012

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


Witam

Otóż jak w temacie napisałem skrypt rejestracji ( rodem z toturialu ) niestety nie dodaje mi rekordów do tabeli, wiem że mam połączenie z bazą danych, ale nie wiem w czym tkwi problem

  1. <?php
  2. //Rejestracja
  3. require 'polaczenie.inc.php';
  4.  
  5. if (isset($_POST['uzytkownik'])&&
  6. isset($_POST['haslo'])&&
  7. isset($_POST['haslo2'])&&
  8. isset($_POST['email'])) {
  9. $uzy = $_POST['uzytkownik'];
  10. $has = $_POST['haslo'];
  11. $ha2 = $_POST['haslo2'];
  12. $ema = $_POST['email'];
  13. // hasło na hasha
  14. $has_hash = sha1($has); // 40 znaków generuje sha1
  15. if( !empty($uzy)&&
  16. !empty($has)&&
  17. !empty($ha2)&&
  18. !empty($ema)){
  19. if ($has != $ha2){
  20. echo 'hasła nie są takie same';
  21. }else{
  22. $q = sprintf("SELECT 'id' FROM 'uzytkownicy' WHERE 'uzytkownik'='".mysql_real_escape_string($uzy)."'");
  23. if($wQ = mysql_query($q)){
  24. $wQr = mysql_num_rows($wQ);
  25. if($wQr == 1){
  26. echo 'taki użytkownik już istnieje';
  27. }else if ($wQr == 0){
  28. $q = sprintf("INSERT INTO 'uzytkownicy' VALUES (' ','".mysql_real_escape_string($uzy)."','".mysql_real_escape_string($has_hash)."','".mysql_real_escape_string($ema)."')");
  29. if(mysql_query($q)){
  30. echo 'zostałeś zarejestrowany pomyślnie';
  31. }else{
  32. echo 'spróbuj ponownie później';
  33.  
  34. }
  35. }
  36. }
  37. }
  38. }else{
  39. echo 'musisz wypełni㇠wszyskie pola';
  40. }
  41.  
  42. }
  43. ?>


Tak sobie myślę że może problemem jest źle skonstruowana tabelka więc podaję screena http://zapodaj.net/0757312451fa.png.html
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
--adriano--
post
Post #2





Goście







witam !

prosze o pomoc mam skryp rejestracji wszystko ok tylko ze wywala mi notice i niewiem dlaczego .

podaje błedy

Notice: Undefined index: akcja in C:\xampp\htdocs\register.php on line 6

Notice: Use of undefined constant wykonaj - assumed 'wykonaj' in C:\xampp\htdocs\register.php on line 7

i kod

  1. <?php header('Content-type: text/html; charset=utf-8'); ?>
  2. <?php include("include/dbconfig.php");
  3.  
  4. $ip = $_SERVER['REMOTE_ADDR'];
  5.  
  6. $akcja = $_GET['akcja'];
  7. if ($akcja == wykonaj) {
  8. //
  9. $nick = substr(addslashes(htmlspecialchars($_POST['nick'])),0,32);
  10. $haslo = substr(addslashes($_POST['haslo']),0,32);
  11. $vhaslo = substr($_POST['vhaslo'],0,32);
  12. $email = substr($_POST['email'],0,32);
  13. $vemail = substr($_POST['vemail'],0,32);
  14. $nick = trim($nick);
  15. //kilka sprawdzen co do nicku i maila
  16. $spr1 = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM uzytkownicy WHERE nick='$nick' LIMIT 1")); //czy user o takim nicku istnieje
  17. $spr2 = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM uzytkownicy WHERE email='$email' LIMIT 1")); // czy user o takim emailu istnieje
  18. $pos = strpos($email, "@");
  19. $pos2 = strpos($email, ".");
  20. $emailx = explode("@", $email);
  21. if ($emailx[1] == 'o2.pl') {
  22. $emailx1 = $emailx[0].'@go2.pl';
  23. $emailx2 = $emailx[0].'@tlen.pl';
  24. $spr3 = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM uzytkownicy WHERE email='$emailx1' OR `email`='$emailx2' LIMIT 1"));
  25. }elseif ($emailx[1] == 'go2.pl') {
  26. $emailx1 = $emailx[0].'@o2.pl';
  27. $emailx2 = $emailx[0].'@tlen.pl';
  28. $spr3 = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM uzytkownicy WHERE email='$emailx1' OR `email`='$emailx2' LIMIT 1"));
  29. }elseif ($emailx[1] == 'tlen.pl') {
  30. $emailx1 = $emailx[0].'@go2.pl';
  31. $emailx2 = $emailx[0].'@o2.pl';
  32. $spr3 = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM uzytkownicy WHERE email='$emailx1' OR `email`='$emailx2' LIMIT 1"));
  33. }
  34. $komunikaty = '';
  35. $spr4 = strlen($nick);
  36. $spr5 = strlen($haslo);
  37. //sprawdzenie co uzytkownik zle zrobil
  38. if (!$nick || !$email || !$haslo || !$vhaslo || !$vemail ) {
  39. $komunikaty .= "Musisz wypełnić wszystkie pola!<br>"; }
  40. if ($spr4 < 4) {
  41. $komunikaty .= "Login musi mieć przynajmniej 4 znaki<br>"; }
  42. if ($spr5 < 4) {
  43. $komunikaty .= "Hasło musi mieć przynajmniej 4 znaki<br>"; }
  44. if ($spr1[0] >= 1) {
  45. $komunikaty .= "Ten login jest zajęty!<br>"; }
  46. if ($spr2[0] >= 1) {
  47. $komunikaty .= "Ten e-mail jest już używany!<br>"; }
  48. if ($email != $vemail) {
  49. $komunikaty .= "E-maile się nie zgadzajš ...<br>";}
  50. if ($haslo != $vhaslo) {
  51. $komunikaty .= "Hasła się nie zgadzajš ...<br>";}
  52. if ($pos == false OR $pos2 == false) {
  53. $komunikaty .= "Nieprawidłowy adres e-mail<br>"; }
  54. if ($spr3[0] >= 1) {
  55. $komunikaty .= "Nie można zarejestrować kilku kont na jednš pocztę o2.<br>"; }
  56.  
  57. //jesli cos jest nie tak to blokuje rejestracje i wyswietla bledy
  58. if ($komunikaty) {
  59. <b>Rejestracja nie powiodła się, popraw następujšce błędy:</b><br>
  60. '.$komunikaty.'<br>';
  61. } else {
  62. //jesli wszystko jest ok dodaje uzytkownika i wyswietla informacje
  63. $nick = str_replace ( ' ','', $nick );
  64. $haslo = md5($haslo); //szyfrowanie hasla
  65.  
  66. mysql_query("INSERT INTO `uzytkownicy` (nick, email, haslo, ip) VALUES('$nick','$email','$haslo','$ip')") or die("Nie mogłem Cie zarejestrować!");
  67.  
  68. echo '<br><span style="color: green; font-weight: bold;">Zostałeœ zarejestrowany '.$nick.'. Teraz możesz się zalogować</span><br>';
  69. echo '<br><a href="logowanie.php">Logowanie</a>';
  70. }
  71. }
  72. ?>
  73.  
  74. <form method="post" action="rejestracja.php?akcja=wykonaj">
  75. <table>
  76. <tr class="tlo-b"><td>Nick:</td>
  77. <td><input maxlength="18" type="text" name="nick" value="<?=$nick?>"></td></tr>
  78. <tr class="tlek"><td>Hasło:</td>
  79. <td><input maxlength="32" type="password" name="haslo"></td></tr>
  80. <tr class="tlo-b"><td>Powtórz hasło:</td>
  81. <td><input maxlength="32" type="password" name="vhaslo"></td></tr>
  82. <tr class="tlo-b"><td>E-mail:</td>
  83. <td><input type="text" name="email" maxlength="50" value="<?=$email?>"></td></tr>
  84. <tr class="tlek"><td>Powtórz E-mail:</td>
  85. <td><input type="text" maxlength="50" name="vemail" value="<?=$vemail?>"></span></td></tr>
  86.  
  87.  
  88. <tr><td colspan="2" align="center"><input type="submit" value="Zarejestruj"></td></tr>
  89. </table></form>
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: 3.10.2025 - 17:19