Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Rejestracja
Forum PHP.pl > Forum > PHP
wojcienty
  1. <!-- KOD REJESTRACJI -->
  2. <form action="?action=register" method="post">
  3. ID: <br><input type="text" name="id"><br><br>
  4. Hasło: <br><input type="password" name="passwd"><br><br>
  5. Powtórz hasło: <br><input type="password" name="rpt_passwd"><br><br>
  6. Kod usunięcia postaci: <br><input type="text" name="social_id"><br>
  7. <input type="reset" value="Wyczyść pola!"><input type="submit" value="Zarejestruj">
  8. </form>
  9. <?php
  10. $polaczenie=mysql_connect(localhost,'root','');
  11.  
  12. mysql_select_db("account",$polaczenie);
  13.  
  14.  
  15. $id = $_POST['id'];
  16. $passwd = $_POST['passwd'];
  17. $rpt_passwd = $_POST['rpt_passwd'];
  18. $social_id = $_POST['social_id'];
  19.  
  20. $zapytanie = "INSERT INTO account (id, passwd, rpt_passwd, social_id) VALUES ('$id','$passwd','$rpt_passwd','$social_id')";
  21. $wynik = mysql_query($zapytanie);
  22.  
  23. if ($wynik)
  24. echo "Konto zostalo zarejestrowane. Mozesz sie zalogowac do gry";
  25. else
  26. echo "Formularz wypelniony nie poprawnie, sprobuj ponownie";


efekt



Chciałbym usunąć ten napis na dole że konto zostało zarejstrowane. Ma się on wyświetlać dopiero po kliknięciu przycisku zarejestruj a on już jest jak się na tą stronę wejdzie.

pytane
Co należy dopisać aby hasła były porównywane i jak nie będą taki same to formularz zwróci błąd ?
jak zrobić żeby jak wpisze np. id wojcienty konto zostanie założone i ktoś będzie chciał założyć konto o takim samym id to formularz zwróci komunikat że takie konto już istnieje.


Z góry dzięki za pomoc.

pozdrawiam wojcienty
PiterosWeb
Zrób tak:

  1. <!-- KOD REJESTRACJI -->
  2. <form action="?action=register" method="post">
  3. ID: <br><input type="text" name="id"><br><br>
  4. Hasło: <br><input type="password" name="passwd"><br><br>
  5. Powtórz hasło: <br><input type="password" name="rpt_passwd"><br><br>
  6. Kod usunięcia postaci: <br><input type="text" name="social_id"><br>
  7. <input type="reset" value="Wyczyść pola!"><input type="submit" name="register" value="Zarejestruj">
  8. </form>
  9. <?php
  10. $polaczenie=mysql_connect(localhost,'root','');
  11.  
  12. mysql_select_db("account",$polaczenie);
  13.  
  14.  
  15. $id = $_POST['id'];
  16. $passwd = $_POST['passwd'];
  17. $rpt_passwd = $_POST['rpt_passwd'];
  18. $social_id = $_POST['social_id'];
  19.  
  20. if(isset($_POST['register']))
  21. {
  22.  
  23. if($passwd === $rpt_passwd)
  24. {
  25. $id_sprawdz = mysql_query("SELECT id FROM account WHERE id='".$id."'");
  26. if(mysql_num_rows($id_sprawdz) == 0)
  27. {
  28. $zapytanie = "INSERT INTO account (id, passwd, rpt_passwd, social_id) VALUES ('$id','$passwd','$rpt_passwd','$social_id')";
  29. $wynik = mysql_query($zapytanie);
  30. echo "Konto zostalo zarejestrowane. Mozesz sie zalogowac do gry";
  31. } else { echo'Takie Id już istnieje.'; }
  32. } else { echo'Podane hasła różnią się.'; }
  33.  
  34. }
pmir13
Skoro to ma być gra to od razu na początku pomyśl o bezpieczeństwie. Użytkownicy mogą wpisać w pole formularza takie znaki jakie tylko zechcą, a ty z tego bez żadnego sprawdzania składasz zapytania do bazy danych. Nawet jeśli ktoś nie ma niecnych zamiarów może być fanem koszykówki i próbować zarejestrować się jako O'Neal i ci się zapytanie rozsypie. Ogólnie dobrym zwyczajem jest pedantycznie sprawdzać każdy, ale to absolutnie każdy tekst, który może przyjść z zewnątrz, bo jeśli ktoś może zmienić ci zapytanie znakami, których się nie spodziewasz, to właściwie ma dostęp do całej bazy danych, włącznie z hasłami, których nawet nie kodujesz. A przecież tematy o SQL injection czy hashowaniu haseł są nawet przypięte.
ciekawskiii
dobrym zwyczajem jest nauczenie sie chociaz podstaw a pozniej robic cos bardziej skomplikowanego.
Na serio robisz gre nie wiedzac jak porownac hasla?
PiterosWeb
To teraz wystarczy mu że doda Addslashes(); i MD5 lub Sha1 i będzie mieć zrobione.
Nie lepiej było by napisać żeby coś poprawił ? niż go krytykować ?
Ja uczyłem się w ten sam sposób robiłem rzeczy które były dla mnie nie osiągalne można powiedzieć z tą różnicą że ja raczej nie prosiłem o pomoc na forum bo wolałem sam do wszystkiego dojść ale to już był mój własny wybór.
wojcienty
chłopaki bez nerwów jak narazie nie potrzebuję żadnych zabezpieczeń ponieważ jest to tylko projekt na OB (Oprogramowanie biurowe) tam nic o zabezpieczeniach nie mieliśmy a nie zamierzam się trudzić bo po co jak kod nie jest sprawdzany. Strona nie będzie nigdzie publikowana to tylko taki projekt, mieliśmy sobie wymyślić temat i ja z kumplem wzieliśmy sobie akurat o metinie , zadanie miało na celu ukazane praktycznego zastosowania baz danych. smile.gif
PiterosWeb
aha. A to widzę że kolega chodzi do Technikum Informatycznego biggrin.gif
To tak jak ja, tylko puki co to ja na OB miałem małą wzmiankę o Bazach danych a cały czas działamy na Office Word, Excel i PowerPoint.
Ale to już tak poza tematem ;D
ciekawskiii
PiterosWeb ja nie krytykuje, raczej sie dziwie, ze wiele osob nie znajac podstaw chce napisac odrazu gre i z kazda duperela lataja na forum nawet nie szukajac w google.
Pisze ogolnie a nie akurat o tym przypadku.
Hpsi
Cytat
chłopaki bez nerwów jak narazie nie potrzebuję żadnych zabezpieczeń ponieważ jest to tylko projekt na OB (Oprogramowanie biurowe) tam nic o zabezpieczeniach nie mieliśmy a nie zamierzam się trudzić bo po co jak kod nie jest sprawdzany. Strona nie będzie nigdzie publikowana to tylko taki projekt, mieliśmy sobie wymyślić temat i ja z kumplem wzieliśmy sobie akurat o metinie , zadanie miało na celu ukazane praktycznego zastosowania baz danych. smile.gif

Sorry że tak powiem ale to głupie podejście. Co z tego ze to projekt na OB, programując powinneś cały czas dażyć do zabezpieczenia skryktów szcególnie, że dzięki temu wyrobisz w sobie nawyki. Robienie czegoś na odpier*** byle żeby było jest dla mnie głupotą nawet jeśli chodzi o projekt szkolny.

Cytat
dobrym zwyczajem jest nauczenie sie chociaz podstaw a pozniej robic cos bardziej skomplikowanego.

Zgodzę się, nauczenie podstaw powinno być obowiązkowe.
neosatan
Ja Ci powiem więcej. Później dostaje zlecenia modyfikacji takich stron i tak prawdę powiedziawszy to wykonuje większość roboty za frajer, bo tego w umowie nie było, a serce się kraja za taki kod...
wojcienty
Macie racje ale my tych podstaw nie mieliśmy nawet pierwsza lekcja z php wyglądała tak że od razu dostaliśmy gotowy kod z połączeniem bazy danych i mieliśmy go przystosować pod swoje bazy czyli pozmieniać tylko loginy i hasła a podstaw się uczę sam na razie idzie to bardzo mozolnie ale trzeba być cierpliwym smile.gif. Tu kolega wyżej wspomniał coś o robieniu na odpier.... powiem ci tak ty jeszcze nie widziałeś "rzeczy" zrobionych na odpier... . Skrypt będzie zabezpieczony ale wszystko zostanie wykonane w swoim czasie, dzięki za tak surowe uwagi tym sposobem motywujecie mnie do dalszej pracy i poszerzaniu swojej wiedzy na temat php. Jak byście znali jakieś tutki to bardzo mile widziane linki wiem że są tu podpięte ale jakbyście mieli coś prócz tego.

@edit

PiterosWeb

przez 1,5 roku w tym siedzieliśmy a teraz przerzuciliśmy się na coś lepszego ;p. Teraz tylko trzeba się tego dobrze nauczyć a jak wiadomo dobrych tutków sieci jest bardzo mało.
japan13
Do nauki proponuje manual wink.gif
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.