Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [oop/php] sprawdzanie czy email jest w bazie
piraciq
post 17.04.2008, 10:31:55
Post #1





Grupa: Zarejestrowani
Postów: 174
Pomógł: 4
Dołączył: 27.07.2007
Skąd: Kraków

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


Witam

że dopiero zaczynam z obiektowym php dlatego piszę tutaj

mam taki kodzik

  1. <?php
  2. private function czy_email_w_bazie($email)
  3.  
  4. {
  5. $zap=$this->query("select user_email from users where user_email='".$this->user_email."'");
  6.  
  7. }
  8. ?>


fukcja sprawdza czy podany email istnieje juz w bazie i teraz pytanie jak to bedzie lepiej zrobic:

czy dodac mysql_num_rows i bede mial liczbe wierszy jesli bedzie rózny od zera to wiadomo snitch.gif


pozdrawiam
Go to the top of the page
+Quote Post
xbigos
post 17.04.2008, 10:54:22
Post #2





Grupa: Zarejestrowani
Postów: 239
Pomógł: 27
Dołączył: 13.07.2005
Skąd: Jarocin

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


  1. <?php
  2. $num_rows = mysql_num_rows($zap)
  3. if($num_rows == 1){
  4. return TRUE;
  5. }
  6. else{
  7. return FALSE
  8. ?>


EDIT:

Nie rozumiem Twojego kodu:) po co się odwołujesz do obiektu user_email skoro do funkcji przekazujesz juz zmienna email?

Ten post edytował xbigos 17.04.2008, 10:58:14


--------------------
Go to the top of the page
+Quote Post
piraciq
post 17.04.2008, 11:13:18
Post #3





Grupa: Zarejestrowani
Postów: 174
Pomógł: 4
Dołączył: 27.07.2007
Skąd: Kraków

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


czyli w efekcie mam cos takiego :]

  1. <?php
  2. private function czy_email_w_bazie($email)
  3.  
  4. {
  5. $zap=$this->query("select user_email from users where user_email='".$this->user_email."'");
  6.  
  7. $num_rows = mysql_num_rows($zap)
  8. if($num_rows == 1)
  9. {
  10. array_push($this -> errors, 'Podany adres e-mail jest już w naszej bazie');
  11. return false;
  12. }
  13. else
  14. {
  15. return true;
  16. )
  17.  
  18.  
  19. }
  20. ?>



i teraz kolejne pytanie z tym związane ta funkcja zwróci mi true jesli nie bedzie adresu w bazie :]
a dalsze moje pytanie

kod

  1. <?php
  2. if ($this->czy_email_w_bazie($this-email))
  3. {
  4.  
  5. }
  6. ?>


czy w tym wypadku jak widać wyżej bedzie wykonywana funkcja questionmark.gif

tak jak pisałem ze zaczyam :]


czy o ile dobrze myśle :]


  1. <?php
  2. if ($this->email_poprawny())
  3. {
  4. //jesli poprawny
  5. }
  6. else
  7. {
  8.  /jesli bledny
  9. }
  10. ?>


i bedzie ok tak questionmark.gif


pozdrawiam
Go to the top of the page
+Quote Post
xbigos
post 17.04.2008, 11:14:43
Post #4





Grupa: Zarejestrowani
Postów: 239
Pomógł: 27
Dołączył: 13.07.2005
Skąd: Jarocin

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


funkcja zwróci TRUE gdy email jest w bazie. mozesz tego uzyc takze do sprawdzania przy rejestracji czy email nie jest juz uzywany.

Nie nie bedzie, działać bo private ogranicza widoczność tylko w obrębie metody Twojej klasy


--------------------
Go to the top of the page
+Quote Post
piraciq
post 17.04.2008, 11:17:13
Post #5





Grupa: Zarejestrowani
Postów: 174
Pomógł: 4
Dołączył: 27.07.2007
Skąd: Kraków

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


czyli dobrze to ma dzialać w obrebie klasy nie poza nia :]
Go to the top of the page
+Quote Post
xbigos
post 17.04.2008, 11:19:32
Post #6





Grupa: Zarejestrowani
Postów: 239
Pomógł: 27
Dołączył: 13.07.2005
Skąd: Jarocin

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


w poprzednim poscie nie napisales ze kod sprawdzania jest w funkcji. pomyslalem ze jest poza klasą


--------------------
Go to the top of the page
+Quote Post
piraciq
post 17.04.2008, 11:21:08
Post #7





Grupa: Zarejestrowani
Postów: 174
Pomógł: 4
Dołączył: 27.07.2007
Skąd: Kraków

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


Sorki za to

ale dzięki za pomoc :]

nawet w małym stopniu pomoże mi to zapoznać sie z filozofią :]


jeszcze raz Dzięki guitar.gif
Go to the top of the page
+Quote Post
skowron-line
post 17.04.2008, 12:40:21
Post #8





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


Nie chciałbym się czepiać ale skoro nie zwracasz wartosci z bazy to chyba lepiej by bylo sprawdzić to COUNT -em


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
piraciq
post 17.04.2008, 13:08:21
Post #9





Grupa: Zarejestrowani
Postów: 174
Pomógł: 4
Dołączył: 27.07.2007
Skąd: Kraków

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


masz na mysli questionmark.gif

  1. <?php
  2. select count(*) where ....
  3. ?>
Go to the top of the page
+Quote Post
Cysiaczek
post 17.04.2008, 13:17:28
Post #10





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Cytat
czy_email_w_bazie


Postaw się w sytuacji programisty nie znającego języka polskiego. Zapoznawaj się z OOP, ale nie zapomnij, że na nic Ci ten sposób pisania, jeśli będzie tworzył takie potworki. Zawsze używaj nazw angielskich - zawsze i bezapelacyjnie.

Pozdrawiam.


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
piraciq
post 17.04.2008, 13:20:11
Post #11





Grupa: Zarejestrowani
Postów: 174
Pomógł: 4
Dołączył: 27.07.2007
Skąd: Kraków

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


Cenna aluzja :] nic nie stoi na przeszkodzie by pozmieniać na angielskie nazwy :] ale od czegos trzeba bylo zacząć :]
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 5.07.2025 - 23:07