Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Rejestracja - problem z nadpisywaniem i dodawiem niepotrzebnych pól
dzesi
post
Post #1





Grupa: Zarejestrowani
Postów: 235
Pomógł: 0
Dołączył: 3.05.2006

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


Witam (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) , mam problem ze sktyptem rejestracji który zaczołem dokanczać i mam kilka problemów z tym zwiazanych .Za bardzo czasu nie mam na doskonalenie swoich umiejetnosci w php , ale zawsze po pracy 1 godzinke poświecam:)
1.Nawet jak nic nie wpisze w formularze , to i tak ddaje mi puste pola ,chciałbym usunąć tą niedokonałośc w moim skrypcie
2.o to ze juz od tego dłubania w tym skrypcie juz mi sie myli , czy dobrze robie mechanizm błedów , bo niby dobrze ale one nie do końca działaja dobrze. Mam nadzieje ze mi pomozecie . Prosił bym o podanie przykładów kodu i co robie zle (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

  1. <?php
  2. header("Content-type: text/html; charset=utf-8");
  3. class Rejestracja
  4. {
  5.  private $login;
  6. private $haslo;
  7. private $haslotwo;
  8.  
  9.  function __construct() {
  10.  include_once('config_database.php');
  11. //odbieranie danych
  12.  
  13.  
  14. $this->login=$_POST['login'];
  15. $this->haslo=$_POST['haslo'];
  16. $this->haslotwo =$_POST['haslotwo'];
  17.  
  18. }
  19.  
  20. public function sprawdzanie_formularza()
  21. {
  22. try {
  23. if(empty($this->login))
  24. {
  25. throw new Exception("b�ad nie poda�es loginu");
  26. }
  27. elseif(empty($this->haslo))
  28. {
  29. throw new Exception("B��d nie poda�e� hasla");
  30. }
  31. if (empty($this->haslotwo)) {
  32. throw new Exception("B��d nie poda�e� hasla");
  33. }
  34. }
  35. catch(Exception $e)
  36. {
  37. echo $e->getMessage();
  38. }
  39. }
  40.  public function polaczenie()  {
  41. $polaczenie = mysql_connect(CONNECT,USER,PASSWORD) or die(connect_error);
  42.  mysql_select_db(DATABASE) or die(database_error);
  43.  }
  44. public function spraw_user() {
  45.  $zapytanielog = "SELECT * FROM `user` WHERE login='" .$this->login . "'";
  46.  $sprawdzlog = mysql_query($zapytanielog) or die(mysql_error());
  47.  /* return*/$num_rows= mysql_num_rows($sprawdzlog) > 0;  
  48.  $ob=mysql_fetch_object($sprawdzlog);  
  49.  }
  50. public function spradzanie_hasla() {
  51.  
  52.  if ($this->haslo!==$this->haslotwo);
  53.  
  54. }
  55. public function sprawdzanie_loginu()
  56. {
  57. if($this->login==$ob->login);
  58.  
  59. }
  60. public function rej_user() {
  61.  $zapisrej="INSERT INTO `user`(`login`,`haslo`)VALUES('" . $this->login . "','" . $this->haslo . "')";
  62. return mysql_query($zapisrej);
  63. }
  64. }
  65. $start=new Rejestracja();
  66. if (isset($_POST['rej']))
  67. {
  68. $start->sprawdzanie_formularza();
  69. }
  70. if(!$start->spradzanie_hasla())
  71. {
  72. print "Podaje� z�e has�o !!!";
  73. }
  74. if(!$start->sprawdzanie_loginu())
  75. {
  76. print "Taki user istnieje";
  77. }
  78. $start->polaczenie();
  79. if ($start->spraw_user())
  80. {
  81.  echo "strona rejestracji";
  82. }
  83.  
  84. if (!$start->rej_user())
  85. {
  86.  echo "Nie udalo sie dodac";
  87. }
  88.  
  89.  
  90. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dzesi
post
Post #2





Grupa: Zarejestrowani
Postów: 235
Pomógł: 0
Dołączył: 3.05.2006

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


Dzin za odpowiedz, ale sam sie tego dopatrzyłem bo dwa razy wywołanie tej samej funkcji poza klasa (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Witam ponownie (IMG:http://forum.php.pl/style_emoticons/default/aaevil.gif) .Już mam takie nerwy że szok z niczym nie maiłem wiekszych problemów jak z tym skryptem rejestracji Jedno co mi nie działa to ze jak nawet wpisze dane w formularz czy ich nie wpisze to tak mi sie pokazuja błedy tzn nie podałes loginu nie podałes hasła , taki user istnieje .i nie do konca catch i try dziaął tzn jak nic nie wpisze to mi tylko podaje Nie podałes loginu a reszta jak by gdzieś gineła i sie nie wyświetlała .A i zrobiłem an ifach ten system zeby sprawzdał czy dany user podał haslo i login ale to teraz nie do konca działa bo i tak puste pola mi sie dodaja w abzie czy ktoś może mi w końcu pokazać na przykładzie jak to powinoo działać i wygladać
  1. <?php
  2. header("Content-type: text/html; charset=utf-8");
  3. class Rejestracja
  4. {
  5.  private $login;
  6. private $haslo;
  7. private $haslotwo;
  8.  
  9.  function __construct() {
  10.  include_once('config_database.php');
  11. //odbieranie danych
  12.  
  13.  
  14. $this->login=$_POST['login'];
  15. $this->haslo=$_POST['haslo'];
  16. $this->haslotwo=$_POST['haslotwo'];  
  17.  
  18. }
  19.  
  20.  
  21.  
  22. public function sprawdzanie_formularza()
  23. {
  24.  
  25. if(empty($this->login))
  26. {
  27. throw new Exception("b�ad nie poda�es loginu");
  28. }
  29. if(empty($this->haslo))
  30. {
  31. throw new Exception("B��d nie poda�e� hasla");
  32. }
  33. if (empty($this->haslotwo)) {
  34. throw new Exception("B��d nie poda�e� hasla");
  35. }
  36. exit();
  37. }
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  public function polaczenie()  {
  44. $polaczenie = mysql_connect(CONNECT,USER,PASSWORD) or die(connect_error);
  45.  mysql_select_db(DATABASE) or die(database_error);
  46.  }
  47. public function spraw_user() {
  48.  $zapytanielog = "SELECT * FROM `user` WHERE login='" .$this->login . "'";
  49.  $sprawdzlog = mysql_query($zapytanielog) or die(mysql_error());
  50. /* return*/ $num_rows= mysql_num_rows($sprawdzlog) > 0;  
  51.  $ob=mysql_fetch_object($sprawdzlog);  
  52.  }
  53. public function spradzanie_hasla() {
  54.  
  55.  if ($this->haslo!=$this->haslotwo);
  56.  
  57. }
  58. public function sprawdzanie_loginu()
  59. {
  60. if($this->login==$ob->login);
  61.  
  62. }
  63. public function rej_user() {
  64.  $zapisrej="INSERT INTO `user`(`login`,`haslo`)VALUES('" . $this->login . "','" . $this->haslo . "')";
  65. return mysql_query($zapisrej);
  66. }
  67. }
  68. $start=new Rejestracja();
  69. if (!isset($_POST['rej']))
  70. {
  71. try{
  72.  $start->sprawdzanie_formularza();
  73. }
  74. catch(Exception $e)
  75. {
  76.  echo $e->getMessage();
  77. }
  78. }
  79.  
  80. if(!$start->spradzanie_hasla())
  81. {
  82. echo"Podajeś złe hasło";
  83. }
  84. if(!$start->sprawdzanie_loginu())
  85. {
  86. echo "Taki user istnieje";
  87. }
  88. $start->polaczenie();
  89. if ($start->spraw_user())
  90. {
  91.  echo "strona rejestracji";
  92. }
  93.  
  94. if (!$start->rej_user())
  95. {
  96.  echo "Nie udalo sie dodac usera";
  97. }
  98.  
  99.  
  100. ?>

Bardzo bym prośił o pokazenie tego jako kodu .troche mi gupio że w php pisze już ponad 1,5 roku a i tak mało wiem i nie do końca wiem jak cos zrobić, ale człowiek uczy sie przeż całe zycie (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif)

Witam już wyrywam sobie włosy z głowy i już trace cierpliwość kk.... (IMG:http://forum.php.pl/style_emoticons/default/aaevil.gif)
Czy któryś z bardziej doświadczonych programistów niż ja może mi wkońcu pomóc.
Prubuje zrrobić system błedów ale wogole mi nie wychodzi ,też wogóle nie dodaje wartości do bazy nie wiem może juz za długo przy nim siedze i nie widze błędów .Bardzo prosze o pomoc. , i żeby ktoś pokazał mi to w kodzie jak to powinno być .
ps:Jeszcze tyle zcasu sie nie męczyłem z takim skryptem (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif) (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif)
  1. <?php
  2. header("Content-type: text/html; charset=utf-8");
  3. class Rejestracja
  4. {
  5.  private $login;
  6. private $haslo;
  7. private $haslotwo;
  8.  
  9.  function __construct() {
  10.  include_once('config_database.php');
  11. //odbieranie danych
  12.  
  13.  
  14. $this->login=$_POST['login'];
  15. $this->haslo=$_POST['haslo'];
  16. $this->haslotwo=$_POST['haslotwo'];  
  17.  
  18. }
  19.  
  20.  
  21. public function sprawdzanie_formularza()
  22. {
  23. if(empty($this->login))
  24. {
  25. throw new Exception("błąd nie podałeś loginu");
  26. }
  27. if(empty($this->haslo))
  28. {
  29. throw new Exception("B��d nie podałesś hasla");
  30. }
  31. if (empty($this->haslotwo)) {
  32.  
  33. throw new Exception("Błąd nie podałeś hasla");
  34. }
  35.  if($this->haslo != $this->haslotwo) {
  36. $formOk = false;
  37. throw new Exception("Hasla musza byc identyczne.");
  38. }
  39.  
  40. }
  41.  
  42.  
  43.  public function polaczenie()  {
  44. $polaczenie = mysql_connect(CONNECT,USER,PASSWORD) or die(connect_error);
  45.  mysql_select_db(DATABASE) or die(database_error);
  46.  }
  47. public function spraw_user() {
  48.  $zapytanielog = "SELECT * FROM `user` WHERE login='" .$this->login . "'";
  49.  $sprawdzlog = mysql_query($zapytanielog) or die(mysql_error());
  50. return $num_rows= mysql_num_rows($sprawdzlog) > 0;  
  51.  $ob=mysql_fetch_object($sprawdzlog);  
  52.  }
  53.  /* public function spradzanie_hasla() {
  54.  
  55.    if ($this->haslo!=$this->haslotwo); // 
  56.  
  57. }
  58. public function sprawdzanie_loginu()
  59. {
  60. if($this->login!=$ob->login);
  61.  
  62. }*/
  63. public function rej_user() {
  64. if( $this->sprawdzanie_formularza() && $this->spraw_user()){
  65.  $zapisrej="INSERT INTO `user`(`login`,`haslo`)VALUES('" . $this->login . "','" . $this->haslo . "')";
  66.  return mysql_query($zapisrej);
  67. }
  68.  
  69. }
  70. }
  71. $start=new Rejestracja();
  72. $start->polaczenie();
  73. if (!isset($_POST['rej']))
  74. {
  75. try{
  76.  $start->rej_user();
  77. }
  78. catch(Exception $e)
  79. {
  80.  echo $e->getMessage();
  81. }
  82. }
  83.  
  84.  
  85. /*if(!$start->spradzanie_hasla())
  86. {
  87. echo"Podajeś złe hasło";
  88. }
  89. if(!$start->sprawdzanie_loginu())
  90. {
  91. echo "Taki user istnieje";
  92. }*/
  93.  
  94. //$start->rej_user();
  95. /*
  96. if ($start->spraw_user())
  97. {
  98.  echo "strona rejestracji";
  99. }
  100.  
  101. if (!$start->rej_user())
  102. {
  103.  echo "Nie udalo sie dodac usera";
  104. }
  105. */
  106. ?>
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: 4.10.2025 - 15:29