Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CakePHP] użycie skryptów zewnętrznych
Forum PHP.pl > Forum > PHP > Frameworki
Zeppelin
witam,
Chcialem uzyc takiej oto sondy w projekcie cake'owym:
http://net.tutsplus.com/tutorials/javascri...ry-and-php/#php

oprocz js są tam zawarte pliki .php

W cakePHP mamy do czynienia z MVC, natomiast ten skrypt zawiera wszystko pomieszane (logika, pobieranie danych i html). Np. action w formularzu odnosi sie do pliku poll.php (w tym przypadku), a w standardzie MVC action odnosi sie do controlera i funkcji, więc jest inna organizacja..

Bardzo bym prosil o wskazówki jak to poukladac, aby moc stosowac zewnetrzne skrypty php albo wskazac mi zrodlo z informacjami na ten temat..

Z góry bardzo dziękuję.
fleshgrinder
możesz to zrobić na dwa sposoby: szybki i wyjątkowo paskudny, albo wolniejszy i ładny.

szybki i wyjątkowo paskudny polega na tym, że wrzucasz cały kod do app/webroot/ i umieszczasz w widoku jako iframe. wolniejszy i ładny na tym, że czytasz ten tutorial, rozgryzasz go i przepisujesz kod tak, aby współdziałał z Cake. jeśli nie jest to rzecz "na wczoraj" i zależy Ci na jakości, to polecam ten drugi smile.gif co do źródeł informacji to poza manualami do Cake i jQ nie potrzebujesz niczego więcej.
Zeppelin
Cytat(fleshgrinder @ 20.04.2011, 00:36:45 ) *
możesz to zrobić na dwa sposoby: szybki i wyjątkowo paskudny, albo wolniejszy i ładny.

szybki i wyjątkowo paskudny polega na tym, że wrzucasz cały kod do app/webroot/ i umieszczasz w widoku jako iframe. wolniejszy i ładny na tym, że czytasz ten tutorial, rozgryzasz go i przepisujesz kod tak, aby współdziałał z Cake. jeśli nie jest to rzecz "na wczoraj" i zależy Ci na jakości, to polecam ten drugi smile.gif co do źródeł informacji to poza manualami do Cake i jQ nie potrzebujesz niczego więcej.


Dzięki! Będę kombinował... Ale podpowiedz jeszcze chociaż w jaki sposób iframe w widoku będzie "łączył" się z tymi plikami w webroot?

A do czego służy Vendor, tak przy okazji? Z angielskim u mnie srednio, ale z tego co czytalem to skojarzylem to wlasnie z jakimis zewnetrznymi skryptami. Mylę się?

Pozdrawiam i dzięki jeszcze raz
fleshgrinder
webroot w Cake służy do przechowywania publicznych zasobów (obrazków, css, js, uploadowanych plików itp.) i działa jak zwykły katalog na serwerze z publicznym dostępem - cokolwiek tam nie wrzucisz będzie widoczne na zewnątrz, w przeciwieństwie do katalogów z modelami, kontrolerami i innymi wewnętrznymi bibliotekami.

działanie iframe możesz sprawdzić w ten sposób:
1. stwórz w app/webroot katalog helloFrame, a w nim plik hello.php o treści: <h1><?php echo 'Hello World' ?></h1>
2. umieść w którymś widoku taki element: <iframe src="<?php echo $this->webroot ?>helloFrame/hello.php" width="100" height="100"></iframe>
gdy odwołasz się do tego widoku, powinieneś zobaczyć swojego hello worlda, czyli ścieżka działa i skrypt się wykonał.

z przyzwoitości powtórzę, że odradzam takie wyjście, ale jeśli nie ma innej opcji to trudno smile.gif

vendory natomiast to importowane klasy i biblioteki. powiedzmy, że chcesz sobie czymś generować pdfy. wrzucasz klasę (niech nazywa się mypdf.php) do vendors, później w kontrolerze/widoku importujesz ją za pomocą App::import('Vendor', 'mypdf'); - to ładuje Ci podaną klasę, od tej pory możesz tworzyć z niej obiekty. vendor się w Twoim przypadku nie sprawdzi, bo oprócz logiki masz jeszcze w swojej ankiecie prezentację i odwoływanie do bazy. prędzej dałoby się ją przepisać jako plugin
Zeppelin
Dzięki wielkie za konkret! smile.gif

PS: używasz jeszcze cake'a ? bo wciąż słyszę/czytam odradzające komentarze wink.gif
fleshgrinder
Cytat(Zeppelin @ 21.04.2011, 08:09:31 ) *
PS: używasz jeszcze cake'a ? bo wciąż słyszę/czytam odradzające komentarze wink.gif


używam, też słyszę negatywne opinie o tym frameworku (głównie z polskiego środowiska, gdzie indziej wydaje się całkiem popularny), ale nie robią na mnie większego wrażenia. liczy się przede wszystkim to, że mogę w nim pracować intuicyjnie - najczęściej pierwsze rozwiązanie problemu jakie przychodzi mi do głowy okazuje się działać i być zgodne z filozofią Cake, a dodatkowo po tych dwóch latach używania nie potykam się już o niektóre zastawione przez niego pułapki wink.gif works for me.

gdybym miał więcej czasu i zapału do PHP, pewnie dałbym szansę Symfony 2, wygląda bardzo zachęcająco, ale ostatnio zakochałem się w JavaScripcie i to jemu poświęcam energię.
R4D3K
I glównym argumentem za nie jest przeważnie zgodność z php4, ale na szczeście Cake 2.0, który powoli się do nas zbliża już będzie tylko pod php 5.2.x, więc myśle że całkiem sporo osób się tym frameworkiem zainteresuje
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.