![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 202 Pomógł: 3 Dołączył: 6.01.2008 Skąd: Mazowieckie Ostrzeżenie: (0%) ![]() ![]() |
Witam, posiadam kod formularza, który wygląda najstępująco:
Kod <h2> Wprowadz dane </h2> <form action="form_rej.php" method="POST"> <table border="0"> <tr><td>imię</td><td> <input type="text" name="imie" maxlenght="30" size="30"></td></tr> <tr><td>nazwisko</td><td> <input type="text" name="nazwisko" maxlenght="30" size="30"></td></tr> <tr><td>login</td><td> <input type="text" name="login" maxlenght="30" size="30"></td></tr> <tr><td>hasło</td><td> <input type="password" name="haslo" maxlenght="30" size="30"></td></tr> <tr><td>powtórz hasło</td><td> <input type="password" name="haslo2" maxlenght="30" size="30"></td></tr> <tr><td colspan="2"><input type="submit" value="dodaj" name="send"> </table> </form> <?php if ($_POST['send']) { if(!$_POST['imie'] || !$_POST['nazwisko'] || !$_POST['login'] || !$_POST['haslo'] || !$_POST['haslo2']) { echo "<h2>wypełnij wszystkie pola</h2>"; } else { $imie=addslashes($_POST['imie']); $nazwisko=addslashes($_POST['nazwisko']); $login=addslashes($_POST['login']); $haslo=addslashes($_POST['haslo']); $haslo2=addslashes($_POST['haslo2']); $polaczenie = @mysql_connect ('localhost', 'root', 'krasnal') or die ("nie udało sie połączyć"); mysql_select_db('fi_kur') or die ("Nie mozna zlokalizowac bazy danych"); if ($haslo == $haslo2) { $query = "INSERT INTO uzytkownicy VALUES ('$id', '$imie', '$nazwisko', '$login', '$haslo', '$haslo2')"; $wykonaj = mysql_query ($query) or die(mysql_error()); echo"<h2>Zostałeś zarejestrowany jako: ".$imie."</h2>"; } else if ($haslo != $haslo2) { echo "hasla nie sa takie same"; } } } ?> Chciałbym zrobić w nim zabezpieczenie hasla (tzn zeby haslo i powtórzenie bylo identyczne), więc napisałem taki skrypt: Kod if ($haslo != $haslo2){ echo"<h2>blędne powtórzenie hasła</h2>"; toretycznie niby działa, bo wszystkie informacje o bledach czy informacjach są dobrze wyswietlane tylko ..nie dodaje wpisu do bazy danych (przed dodaniem powyższego skryptu było ok) Podejzewam, ze wstawiam skrypt w złym miejscu albo żle go zdefiniowałem P.S. Z samym skryptem mam również taki problem, że wcześniej podczas dodawania pozycji do bazy danych [MySQL] wygląda ona tak: 1 2 3 4 5 itd . . 11 10 9 a nie ustawiałem w niej zadnego Sortowania wg klucza Nie wiem o co chodzi bo czasem dodaje prawidłowo, a czasem tak "miesza".. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 568 Pomógł: 192 Dołączył: 7.03.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
możesz jeszcze dodąć funkcje która sprawdzi czy hasło lub login zawieraja jedynie liczby i litery:
Dodatkowo sprawdz czy dany uzytkownik lub email istnieje
Możesz wywalić funkcję szyfrującą md5 i strtolower zamieniającą login na małe litery Ten post edytował potreb 19.01.2008, 15:09:38 -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 202 Pomógł: 3 Dołączył: 6.01.2008 Skąd: Mazowieckie Ostrzeżenie: (0%) ![]() ![]() |
dzieki, działa :-) ..tzn dodaje wpis tylko, dodaje se gdzie chce
tzn na liście zamiast po kolei to jest 1 2 3 117 83 itp Ten post edytował em-ba 19.01.2008, 15:12:30 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 568 Pomógł: 192 Dołączył: 7.03.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Wklej takie zapytanie:
<?php $query = "INSERT INTO uzytkownicy VALUES ('', '$imie', '$nazwisko', '$login', '$haslo', '$haslo2')"; ?> Na id się nie patrz, wyczyść tabele i id będzie przypisywało ci po kolei. Id jest przypisywane automatycznie, jeżeli skasujesz użytkownika o jakimś id to już nie utworzy wiersza o tym samym id co skasowało. W bazie id musi miec wartość int(11) auto_increment oraz klucz PRIMARY KEY (id) Ten post edytował potreb 19.01.2008, 15:19:56 -------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 202 Pomógł: 3 Dołączył: 6.01.2008 Skąd: Mazowieckie Ostrzeżenie: (0%) ![]() ![]() |
teraz jak przechodze do formularza to defaultowo mam pod nim wyświetlone:
zostaleś zalogowany jako: a jeszcze niżej Hasło może zawierać jedynie liczby i litery baze wyczyscilem i jest ok Ten post edytował em-ba 19.01.2008, 15:52:59 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 1 568 Pomógł: 192 Dołączył: 7.03.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
i zrzut z bazy: Kod CREATE TABLE `uzytkownicy` ( `id` int(11) NOT NULL auto_increment, `login` varchar(20) NOT NULL, `haslo` varchar(20) NOT NULL, `imie` varchar(20) NOT NULL, `nazwisko` varchar(50) NOT NULL, `email` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) TYPE = MyISAM; Ma działać bezbłędnie ![]() -------------------- |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 202 Pomógł: 3 Dołączył: 6.01.2008 Skąd: Mazowieckie Ostrzeżenie: (0%) ![]() ![]() |
Masz rację.. ładnie działa
![]() A przy okazji, wiesz jak mozna zrobić pole np. z REGONEM. Chodzi mi tu o podzielony ciąg liczbowy. Nie wiem w jaki sposob ma to zapisywać do bazy do jednego pola.. |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 1 568 Pomógł: 192 Dołączył: 7.03.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Regon, znaleziony gdzieś w necie:
Ten post edytował potreb 19.01.2008, 16:51:31 -------------------- |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 202 Pomógł: 3 Dołączył: 6.01.2008 Skąd: Mazowieckie Ostrzeżenie: (0%) ![]() ![]() |
dzieki, dodałem i ładnie działa
Ten post edytował em-ba 20.01.2008, 12:03:33 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 05:29 |