Skocz do zawartości

Logowanie, rejestracja


Perykles

Polecane posty

Siema,

Napisałem jakiś badziewny skrypt rejestracji, ale nie chce działać. Może najpierw wkleje kod:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta name="keywords" content="algorytmy, algorytmika" />
<title>Strona główna - algorytmika</title>
<link rel="stylesheet" type="text/css" href="cascade.css">
</head>
<body>
<div id="left_image"></div>
<div id="right_image"></div>
<div id="container">
<div id="logo">
<img src="logo.jpg" alt="obrazek" />
</div>
<div id="box">
<div id="pasek_nawigacyjny">
<div id="pas_tytul">Menu główne</div>
<div id="kol_pasek_naw"><br /><a href="index_wybor_podstawy.html"><img src="Podstawy.JPG" alt="obrazek" /></a><br />
<a href="index_wybor_algorytmy.html"><img src="Algorytmy.JPG" alt="obrazek" /></a><br />
<a href="kalkulatory.php"><img src="Kalkulatory.JPG" alt="obrazek" /></a><br />
<a href="index.html"><img src="Download.JPG" alt="obrazek" /></a><br /></div><br />
</div>
<div id="tresc" style="height: 473px">
<h1 style="text-align: center">Rejestracja</h1><br />
<?php
    echo ("<form method="post" action="rejestracja.php"><table><tr><td width="50px">Nazwa użytkownika:</td><td><input type="text" name="login"></td></tr>
          <tr><td width="50px">Hasło:</td><td><input type="text" name="haslo" /></tr></tr>
          <tr><td width="50px">Potwierź hasło:</td><td><input type="text" name="haslo2" /></tr></tr>
          <tr><td><input type="submit" name="submit" value="Zarejestruj!" /></td></tr></table></form>");

    $connect = mysqli_connect('host', 'login', 'haslo', 'baza') or die ("Nie moglem sie polaczyc z serwerem");

    $_POST['login'] = $login;
    $_POST['haslo'] = $haslo;

    if(isset($_POST['login'])and isset($_POST['haslo']) and isset($_POST['haslo2']) and isset($_POST['submit']))
    {
      if($_POST['haslo']==$_POST['haslo2'])
      {
          $zapytanie = "INSERT INTO users VALUES('1', '$login', '$haslo')";
          mysqli_query($connect, $zapytanie);
          echo "Konto zostało utworzone";
      }
      else
      {
      echo "Podane hasła nie zgadzają się.";
      exit();
      }
    }
?>
</div>
</div>
</div>
</body>
</html>

 

Jak wciskam submit to nic się nie wyświetla, ani nie zapisuje do bazy danych. Co jest tu źle?

Link do komentarza
Udostępnij na innych stronach

CYTAT(Perykles @ śro, 27 sty 2010 - 16:47)

 

 

Napisałem jakiś badziewny skrypt rejestracji

 

 

szczerość biggrin.gif

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta name="keywords" content="algorytmy, algorytmika" />
<title>Strona główna - algorytmika</title>
<link rel="stylesheet" type="text/css" href="cascade.css">
</head>
<body>
<div id="left_image"></div>
<div id="right_image"></div>
<div id="container">
<div id="logo">
<img src="logo.jpg" alt="obrazek" />
</div>
<div id="box">
<div id="pasek_nawigacyjny">
<div id="pas_tytul">Menu główne</div>
<div id="kol_pasek_naw"><br /><a href="index_wybor_podstawy.html"><img src="Podstawy.JPG" alt="obrazek" /></a><br />
<a href="index_wybor_algorytmy.html"><img src="Algorytmy.JPG" alt="obrazek" /></a><br />
<a href="kalkulatory.php"><img src="Kalkulatory.JPG" alt="obrazek" /></a><br />
<a href="index.html"><img src="Download.JPG" alt="obrazek" /></a><br /></div><br />
</div>
<div id="tresc" style="height: 473px">
<h1 style="text-align: center">Rejestracja</h1><br />

    <form method="post" action="rejestracja.php"><table><tr><td width="50px">Nazwa użytkownika:</td><td><input type="text" name="login"></td></tr>
          <tr><td width="50px">Hasło:</td><td><input type="text" name="haslo" /></tr></tr>
          <tr><td width="50px">Potwierź hasło:</td><td><input type="text" name="haslo2" /></tr></tr>
          <tr><td><input type="submit" name="submit" value="Zarejestruj!" /></td></tr></table></form>
<?php
    $connect = new mysqli('host', 'login', 'haslo', 'baza') or die ("Nie moglem sie polaczyc z serwerem");
////to do wywalenia
//     $_POST['login'] = $login;
//     $_POST['haslo'] = $haslo;
/////////////////////

    if(isset($_POST['login'])and isset($_POST['haslo']) and isset($_POST['haslo2']) and isset($_POST['submit']))
    {
      if($_POST['haslo']==$_POST['haslo2'])
      {
          $zapytanie = "INSERT INTO users VALUES('1', '". $_POST['login'] ."', '". $_POST['haslo'] ."')";
          $connect ->query($zapytanie);
          echo "Konto zostało utworzone";
      }
      else
      {
      echo "Podane hasła nie zgadzają się.";
      exit();
      }
    }
?>
</div>
</div>
</div>
</body>
</html>

chyba dobrze wink.gif

wypadało by Jeszce sprawdzić czy użytkownik istnieje czy użytkownik istnieje w bazie i przeprowadzić walidację danych

Link do komentarza
Udostępnij na innych stronach

Dzięki, działa dobrze ;)

 

Może mi ktoś jeszcze powiedzieć, czemu logowanie nie działa?:

 

<?php
    if (isset($_POST['login']) and isset($_POST['haslo']) )
    {
      $connect = mysqli_connect(...) or die ("Nie moglem sie polaczyc z serwerem");
      $password = sha1(md5($password));
      $zapytanie="SELECT id FROM user WHERE Login='".$_POST['login']."' and Haslo ='".$_POST['haslo']."'";
      $temp=mysqli_query($connect, $zapytanie) or die("Wystąpił błąd");
      $ile=mysqli_num_rows($temp);
      if ($ile==1)
        {
echo ("Zostales zalogowany. Kliknij <a href=\"zlicz.php?id=4\">tutaj</a>");
        }
        else echo "Podales zle dane.";
    }
?>

 

Niby żaden błąd się nie pokazuje, ale też nie wyświetla się to z echo().

Link do komentarza
Udostępnij na innych stronach

Skopiowałem ten kod z jakiejś strony, potem zmieniałem, kopiowałem do kilkunastu stron, gdzieniegdzie coś zmieniłem, aż w końcu się pomyliłem ;). Linijki $password = sha1(md5($password)); tu nie powinno być, chodziło mi o efekt jaki jest bez niej, a raczej o brak efektu.

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...