Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Problem ze skryptem rejestracji
Forum PHP.pl > Forum > Przedszkole
Darek1985
Witam.Sciągnąłem i lekko zedytowałem skrypt do rejestracji użytkowników,jednakże ,nie dodaje mi danych do bazy danych i nie wyśiwetla żadnego błędu.
oczywiście login i hasło w oryginalnej wersji są wpisane biggrin.gif .implementacja jest pod adresem
http://www.lightnet.eu/openpoland/rejestracja.php
Oto kod
  1. <?php
  2.  
  3.  // łączymy się z bazą danych i wybieramy potrzebną baze danych
  4.  $link_id = mysql_connect("localhost", "login", "haslot"); // tu root i pass są wprowadzone przez was w zależności od konfiguracji waszego se
    rwera
  5.  mysql_select_db("rejestr");
  6.  mysql_close($link_id);
  7.  
  8.  // stworzymy dwie przydatne funkcje...jedna będzie tworzyła nagłówek strony, a dru
    ga stopke strony
  9.  function html_header()
  10.  {
  11.  global $new_win_width, $new_win_height;
  12.  ?>
  13.  <html>
  14.  <head>
  15.  
  16.  <title id="page_title">OPENPOLAND</title>
  17. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  18.  <link href="http://www.lightnet.eu/openpoland/css/style.css" rel="stylesheet" type="text/css" />
  19.  </head>
  20.  <body>
  21.  <?php
  22.  }
  23.  
  24.  function html_footer()
  25.  {
  26.  ?>
  27.  </body>
  28.  </html>
  29.  <?php
  30.  }
  31.  
  32.  
  33.  function in_use($login) // funkcja ta sprawdza czy s dany login nie jest już wykorzystany
  34.  {
  35.  global $tabela_uzytkownikow;
  36.  
  37.  $query = "SELECT login FROM $rejestr WHERE login = 'login'";
  38.  $result = mysql_query($query);
  39.  if(!mysql_num_rows($result)) return 0;
  40.  else return 1;
  41.  }
  42.  
  43.  
  44.  function register_form() // funkcja ta wyświetla nam formularz w który użytkownik wpisze swoje dane
  45.  {
  46.  global $login, $username;
  47.  global $PHP_SELF;
  48.  ?>
  49.  <center><h3>Utworz swoje konto</h3></center>
  50.  <form method="post" ACTION="<?php echo $PHP_SELF ?>">
  51.  <input type="hidden" NAME="action" VALUE="register">
  52.  
  53.  
  54.  <p>Login (max 14 znaków)</p>
  55.  <INPUT TYPE="text" NAME="login" VALUE="<?php echo $login ?>" SIZE="8" MAXLENGHT="8">
  56.  
  57.  <p>Wybrane hasło</p>
  58.  <TD WIDTH="70%"><INPUT TYPE="password" NAME="haslo" SIZE="15"></TD>
  59.  </TR>
  60.  <TR>
  61. <p>Powtórz hasło</p>
  62.  <TD WIDTH="70%"><INPUT TYPE="password" NAME="userpassword2" SIZE="15"></TD>
  63.  </TR>
  64.  <TR>
  65. <p>Imie i Nazwisko</p>
  66.  <TD WIDTH="70%"><INPUT TYPE="text" NAME="username" VALUE="<?php echo $username ?>" SIZE="20"></TD>
  67.  </TR>
  68.  <TR>
  69.  <p>Czego szukasz?</p>Czego szukasz?
  70.  
  71.  <select name="grupa" style="background-color:white;">
  72.  <option value="" style="background-color:white;">Wybierz</OPTION>
  73. <option value="szukam">Szukam pracownika</OPTION>
  74. <option value="szukany"> Szukam pracy</OPTION>
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  <INPUT TYPE="submit" VALUE="Rejestruj">
  81.  <INPUT TYPE="reset" VALUE="Wyczyść">
  82.  
  83.  </FORM>
  84.  <?php
  85.  }
  86.  
  87.  
  88.  function create_account() // funckja ta tworzy tworzy konto danego użytkownika
  89.  {
  90.  global $login, $username, $haslo, $userpassword2;
  91.  
  92.  
  93.  
  94.  // można też na wszelki wypadek dopisać warunki funkcji if które sprawdzałyby czy 
    podane dane są poprawne. Ja ten krok pomijam
  95. if($haslo==$userpassword2){
  96.  $link_id = mysql_connect("localhost", "login, "haslo");
  97.  
  98.  $query = "INSERT INTO user VALUES(NULL, '$login', password('$haslo'), '$username','$grupa')";
  99.  
  100.  $result = mysql_query($query);
  101.  $usernumber = mysql_insert_id($link_id);
  102.  
  103.  
  104.  html_header();
  105.  }
  106.  else{
  107.  echo '<center><h2>Przepraszamy lecz hasło zostało wprowadzone nieprawdidłowo</h2></center>';
  108.  }
  109.  ?>
  110.  <CENTER><H3>
  111.  <?php echo $username ?>, dziękujemy za zarejestrowanie się
  112.  </H3></CENTER>
  113.  
  114.  <DIV ALIGN="center"><CENTER><TABLE BORDER="1" WIDTH="90%">
  115.  <TR>
  116.  <TH WIDTH="30%" NOWRAP>Numer użytkonika</TH>
  117.  <TD WIDTH="70%"><?php echo $usernumber ?></TD>
  118.  </TR>
  119.  <TR>
  120.  <TH WIDTH="30%" NOWRAP>Wybrany identyfikator</TH>
  121.  <TD WIDTH="70%"><?php echo $userid ?></TD>
  122.  </TR>
  123.  <TR>
  124.  <TH WIDTH="30%" NOWRAP>Wybrane hasło</TH>
  125.  <TD WIDTH="70%"><?php echo $userpassword ?></TD>
  126.  </TR>
  127.  <TR>
  128.  <TH WIDTH="30%" NOWRAP>Imię i Nazwisko</TH>
  129.  <TD WIDTH="70%"><?php echo $username ?></TD>
  130.  </TR>
  131.  </TABLE></CENTER></DIV>
  132.  
  133.  <?php
  134.  html_footer();
  135.  }
  136.  switch($action)
  137.  {
  138.  case "register":
  139.  create_account();
  140.  break;
  141.  default:
  142.  html_header();
  143.  register_form();
  144.  html_footer();
  145.  break;
  146.  }
  147.  ?>
andy84
co do query sproboj moze tak
  1. <?php
  2. $query = "INSERT INTO user VALUES(NULL, '".$login."', password('".$haslo."'), '".$username."','".$grupa."')";
  3. ?>

i sproboj mysql_close na koncu skryptu wrzucic

a to nie powinno byc tak questionmark.gif? - pytam sie bo zmieniales skrypt i nie wiem czy tu cos ruszales czy tak bylo questionmark.gif
  1. <?php
  2. $query = "SELECT login FROM $rejestr WHERE login = '$login'";
  3. ?>


to bym zrobil tak
  1. <TD WIDTH="70%"><INPUT TYPE="text" NAME="username" VALUE="<?php echo "$username"; ?>" SIZE="20"></TD>

jeszcez jedno z login bylo tez

jak bys uzyl zmiennych dla localhost , login i password nie musial bys biegac po skrypcie i zmieniac ich wszedzie - taka rada

sprawdz czy to pomoze
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.