Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl


quality
Napisane: 10.06.2011, 14:40:12





Grupa: Zarejestrowani
Postów: 172
Dołączył: 13.02.2006
Skąd: Warszawa

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

Tak sie generuje linki za pomoca helpera "url". Sposob ten jest bardzo dobry, gdyz w kazdej chwili mozesz zmienic sobie router, wraz ze zmiana linku (nazwy). Gdy bedziesz stosowal linki za pomoca helpera "url" nie bedziesz musial pozniej zmieniac wszystkich linkow w templatkach, ktore dotycza tego routera, gdyz zmienia sie one automatycznie. Przy zapisywaniu statycznym (klasycznym), kazda zmiana routera bedzie powodowala koniecznosc zmiany ich w templatce.

Mam nadzieje ze w miare zrozumiale to napisalem smile.gif
Pozdrawiam
  Forum: Frameworki · Podgląd postu: #871300 · Odpowiedzi: 1 · Wyświetleń: 315

quality
Napisane: 18.02.2011, 15:13:01





Grupa: Zarejestrowani
Postów: 172
Dołączył: 13.02.2006
Skąd: Warszawa

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

Szablony ktore piszesz rowniez musza byc zakodowane w utf8, sprawdz w ustawieniach edytora.
  Forum: Frameworki · Podgląd postu: #838436 · Odpowiedzi: 2 · Wyświetleń: 695

quality
Napisane: 8.08.2010, 20:46:15





Grupa: Zarejestrowani
Postów: 172
Dołączył: 13.02.2006
Skąd: Warszawa

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

Zrob dwie trasy routingu, cos w podobie jak teraz, tylko w odwrotnej kolejnosci je dodaj.

Zeby to dzialalo musisz tylko dodac 3 parametr do route z lang, okreslajacy jaki ma byc lang np:
  1. $route = new Zend_Controller_Router_Route(
  2. ':lang/:action/:id/:data',
  3. array('module'=>'default', 'lang'=>'pl', 'controller'=>'index',
  4. 'action'=>'index', 'id'=>false, 'data'=>false), //Wartości domyślne
  5. array('lang'=>'[a-z_]+'));


"array('lang'=>'[a-z_]+')" ten parametr okresla wartosci jakie moze przyjmowac lang, daj tak jak teraz tylko dodaj ze moze miec tylko dwa znaki, jesli bedziesz mial kontrolery z wieksza iloscia znakow, route bedzie dopasowywal do pierwszego, standarowego routa. ROute z "lang" zostanie pominiety smile.gif

Pokombinuj cos w tym stylu powinno sie udac.

Pozdrawiam Adrian
  Forum: Frameworki · Podgląd postu: #776076 · Odpowiedzi: 2 · Wyświetleń: 655

quality
Napisane: 13.05.2010, 14:31:58





Grupa: Zarejestrowani
Postów: 172
Dołączył: 13.02.2006
Skąd: Warszawa

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

Mysle ze dobrze myslisz.

Mozesz podejzec jak to jest robione w frameworkach php np w symfony i zend jest to bardzo dobrze rozwiazane smile.gif

W Zendzie masz np cos takiego jak kontroller i akcja kontrollera. Czyli kontroller to jest klasa, a akcje to metody klasy. Dajesz glowny kontroller, ktory uruchamia Ci poszczegolne kontrolery i odpowiednie akcje, w zaleznosci od adresu i masz zrobiona obsluge kontrolerow.

Praktycxznie model MVC to jak sama nazwa wskazuje model, widok i kontroller.
Model zajmuje sie tylko i wylacznie pobieraniem danych z bazy, widok tylko i wylacznie wyswietla html + wyswietlenie zmiennych ( ewentualnie jakies szablony np smarty), a najwazniejszy jest kontroler. Zarzadza on ktora akcje uruchomic, jakie dane pobrac z ktorego modelu i ktory widok uruchomic.

Pozdrawiam
  Forum: Object-oriented programming · Podgląd postu: #746205 · Odpowiedzi: 3 · Wyświetleń: 1 325

quality
Napisane: 6.05.2010, 08:05:54





Grupa: Zarejestrowani
Postów: 172
Dołączył: 13.02.2006
Skąd: Warszawa

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

Do tego aby dane byly szyfrowane potrzeba jedynie wlaczonej obslugi https ( trzeba miec certyfikat ) i wywolanie tego adresu smile.gif Aby jednak nie trzeba bylo klikac i akceptowac certyfikatu recznie w przegladarce, nie wystarczy wygenerowany recznie certyfikat, trzeba wykupic taki w zewnetrznej firmie potwierdzajacej tozsamosc.
  Forum: PHP · Podgląd postu: #743625 · Odpowiedzi: 2 · Wyświetleń: 754

quality
Napisane: 26.04.2010, 08:03:06





Grupa: Zarejestrowani
Postów: 172
Dołączył: 13.02.2006
Skąd: Warszawa

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

Ja napisalem sobie wlasna klase losujaca w zaleznosci od adresu url:

  1. class Admin_File_Random{
  2.  
  3. private $x;
  4. private $max;
  5. private $g=75;
  6. private $n=65537;
  7.  
  8. public function __construct($seed,$max){
  9. $seed = hexdec(substr(md5($seed),0,5));
  10. $this->x=bcmod($seed,$this->n);
  11. $this->max=$max;
  12.  
  13. }
  14.  
  15. public function rand(){
  16. $y=$this->g*$this->x;
  17. $this->x=bcmod($y,$this->n);
  18. return floor($this->max*$this->x/$this->n);
  19. }
  20.  
  21. public function randHow($ile){
  22. if($ile>$this->max)
  23. {
  24. throw new Exception('Liczba wylosowanych liczb przekracza liczbe maksymalna');
  25. }
  26. $tabRand = array();
  27. $d = "0";
  28. for($i="1"; $i<=$ile; $i++)
  29. {
  30. $y[$i]=($this->g+$i*10)*$this->x;
  31. $this->x=bcmod($y[$i],$this->n);
  32. $number = floor($this->max*$this->x/$this->n);
  33.  
  34. if(in_array($number, $tabRand))
  35. {
  36. $i--;
  37. $this->g = $this->g + 1;
  38. $this->n = $this->n + 3;
  39. } else {
  40. $tabRand[] = $number;
  41. }
  42. }
  43. return $tabRand;
  44. }
  45. }


W konstruktorze $seed - adres url, $max - maxymalna wylosowana liczba.
Nastepnie wywolujesz metode rand() - zwraca jedna liczbe, albo randHow() - zwraca tablice wysolosowanych wartosci, jako parametr ilosc liczb do wylosowania.

Funkcja ta jest o tyle dobra ze dla kazdego adresu generuje te same liczby. Takze tutaj rozwiazany problem z google smile.gif Na konkretnym adresie mamy te same linki, na kazdej podstronie inne.
Jesli jakies pytania prosze pytac.

Pozdrawiam Adrian
  Forum: PHP · Podgląd postu: #740309 · Odpowiedzi: 6 · Wyświetleń: 1 136

quality
Napisane: 23.04.2010, 10:13:10





Grupa: Zarejestrowani
Postów: 172
Dołączył: 13.02.2006
Skąd: Warszawa

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

Ja mam to tak zrobione.
  1. $usersOne = new Zend_Controller_Router_Route(
  2. ':controller/:action/*',
  3. array('module' => 'default','controller' => 'uzytkownik','action' => 'index'));
  4.  
  5. $users = new Zend_Controller_Router_Route_Hostname(
  6. ':users.'.$this->base,
  7. array( 'module' => 'default','controller' => 'uzytkownik','action' => 'index'),
  8. array('users' => '([a-z0-9]+)',)
  9. );
  10.  
  11. $router->addRoute('default', $users->chain($usersOne));


naturalnie ze z www nie bedzie ci przechodzic. Powinienes miec jeden adres a nie z www i bez - google to traktuje jako dwie odrebne strony.
Zrob przekierowanie 301 w htacces z adresu www.domena.pl na domena.pl

Pozdrawiam Adrian
  Forum: Frameworki · Podgląd postu: #739378 · Odpowiedzi: 1 · Wyświetleń: 609

quality
Napisane: 18.02.2010, 19:46:28





Grupa: Zarejestrowani
Postów: 172
Dołączył: 13.02.2006
Skąd: Warszawa

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

Mail hmmm najlepszym sposobem byloby polaczenie wszystkich trzech rozwiazan smile.gif

Jesli chodzi o maila to dobry pomysl, pomysl jednak czy chcesz miec wiecej glosow bo to bardzo duze ograniczenie. Zeby mozna bylo zaglosowac to trzeba by bylo podac maila, odebrac poczte i jeszcze kliknac w link aktywacyjny. Wiec nie przewiduj ze bedzie duzo takich wytrwalych winksmiley.jpg

Moim zdaniem spokojnie wystarczy zabezpieczenie cookie + ip. Jesli chodzi o ograniczenia czasu z cookie to chyba nie ma okreslonej maksymalnej daty, nie jestem pewien. Ale wiadomo ze przewaznie raz do roku robi sie formata wiec i tak mozna zalozyc ze po tym czasie ono przepadnie.

Cookie oczywiscie mozna wykasowac recznie ale w polaczeniu z ip daje dobry rezultat.
Jesli chodzi natomiast o ip to sa dwie wady po pierwsze nie da sie sprawdzic zmiennego ip, a po drugie blokujac ip mozna zablokowac glosowanie osob ktore jeszcze nie glosowaly ( chodzi tutaj o podsieci czyli osoby w sieci wewnetrznej - czesto jeden blok ma jedno ip) jednak nie sadze zeby to bylo az taka duza wade i znaczenie.

Tak wiec polecam cookie + ip smile.gif

Nie wiem czy sie da jakos pobrac adres mac karty sieciowej bo to by byl chyba najlepszy sposob smile.gif wtedy jeden komputer mialby jeden glos smile.gif, aczkolwiek mac adres tez mozna zmienic ale kto na to wpadnie winksmiley.jpg

pozdrawiam
  Forum: PHP · Podgląd postu: #714801 · Odpowiedzi: 2 · Wyświetleń: 980

quality
Napisane: 27.01.2010, 15:01:03





Grupa: Zarejestrowani
Postów: 172
Dołączył: 13.02.2006
Skąd: Warszawa

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

Mozna stosować sesję lub cookie, albo sesje w połączeniu z baza danych (szybsze, bezpieczniejsze i funkcjonalniejsze) smile.gif

Pozdrawiam
  Forum: PHP · Podgląd postu: #706372 · Odpowiedzi: 4 · Wyświetleń: 822


New Posts  Nowe odpowiedzi
No New Posts  Brak nowych odpowiedzi
Hot topic  Popularny temat (Nowe)
No new  Popularny temat (Brak nowych)
Poll  Sonda (Nowe)
No new votes  Sonda (Brak nowych)
Closed  Zamknięty temat
Moved  Przeniesiony temat
 

RSS Wersja Lo-Fi Aktualny czas: 23.04.2024 - 11:16