Sziasztok!
Az alábbi linken található egy kis web browser program (MiniBrowser néven):
http://forums.devx.com/showthread.php?threadid=149187
Ez viszonylag jól megjeleníti a HTML fájlokat, viszont olyan esetekben, amikor PHP által generált oldalakat kellene megjeleníteni, csődöt mond.
Hogyan kell tovább építenem a programot, hogy a PHP oldalak is helyesen jelenjenek meg?
- 3689 megtekintés
Hozzászólások
Szia!
Ha valóban választ vársz, akkor ne bízd a válaszadóra, hogy végigolvassa a fórumot, hanem írd le minél rövidebben, hogy mi a megoldásod ami nem működik.
Egyébként elvileg teljsen mindegy, hogy egy HTML-t milyen nyelven írt program generál, tehát nem a PHP lesz a gond.
- A hozzászóláshoz be kell jelentkezni
írd le minél rövidebben, hogy mi a megoldásod ami nem működik
Röviden: MiniBrowser
Most olvastam egy témát a HUP-on: http://hup.hu/node/83348
Lehet, hogy nekem is az apache irányában kell keresgetnem a megoldást?
- A hozzászóláshoz be kell jelentkezni
írd le minél rövidebben, hogy mi a megoldásod ami nem működik
Röviden: MiniBrowser
Túlteljesítetted a feladatot. Márminthogy túl rövid lett a leírásod, annyira rövid, hogy nem is írtad le, hogy mi nem működik vele. Mutass egy példát.
- A hozzászóláshoz be kell jelentkezni
Akkor fogalmazzuk újra: írd le minél hosszabban, hogy mi a megoldásod ami nem működik :-)
- A hozzászóláshoz be kell jelentkezni
:)
A te prolémad az, hogy asztalosnak születtél, hagyd a browsert másra.
- A hozzászóláshoz be kell jelentkezni
+1
----------------------
"ONE OF THESE DAYS I'M GOING TO CUT YOU INTO LITTLE PIECES!!!$E$%#$#%^*^"
- A hozzászóláshoz be kell jelentkezni
Lehet, hogy nekem is az apache irányában kell keresgetnem a megoldást?
Ugyanazt a PHP oldalt, amit a MiniBrowser nem szolgál ki nyit meg, más böngésző megnyitja korrektül? Ha nem, akkor az Apache/PHP beállítások áttekintését tudom javasolni, mint az előttem szóló is.
Szerk.: Valami hasonló van-e a httpd.conf-odban?
LoadModule php5_module "/foo/bar/php5apache2_2.so"
AddType application/x-httpd-php .php
--
A gyors gondolat többet ér, mint a gyors mozdulat.
- A hozzászóláshoz be kell jelentkezni
a PHP oldalt, amit a MiniBrowser nem szolgál ki nyit meg, más böngésző megnyitja korrektül?
Nos. Pontosan ez a helyzet. UBUNTU 8.04 op.rendszerem van. Két web böngésző is fel van telepítve (FireFox és Konqueror). Mindkettőben helyesen jelenik meg a PHP által generált oldal.
Egy példa:
Induljunk el erről az oldalról: http://jancsiweb.com/sfree/letoltesek.php?id=10353
Ha az egyik sorra rákattintunk, akkor válasszuk az ingyenes letöltést. A FireFox helyesen megjeleníti ekkor a letöltésre szolgáló oldalt, míg a MiniBrowser egy olyan oldalt jelenít meg, ahol azt közlik, hogy a kért állomány nem létezik. Természetesen a FireFox is ezt jeleníti meg, ha ténylegesen nincs meg a fájl. De a megadott esetben létezik, tehát a MiniBrowser nem képes rendesen kapcsolatot teremteni a PHP oldallal.
Valami hasonló van-e a httpd.conf-odban?
Rákerestem. Nincs ilyen fájl a gépemen.
- A hozzászóláshoz be kell jelentkezni
Rákerestem. Nincs ilyen fájl a gépemen.
Mert nem a saját gépeden futó Apache+PHP szolgálja ki a böngésződet. Ne is keresd. :D
Megnéztem a példalinket, valószínű, hogy ez a MiniBrowser nem fogja megenni az ilyen redirect-es linkeket.
Szerk.:
Próbálj meg egy html állomány kreálni a saját gépeden az alábbi tartalommal:
<html><head>
<meta http-equiv="Refresh" content="5; url=http://www.hup.hu/">
</head><body>
<p>5 másodperc múlva megyünk a HUP-ra!</p>
</body></html>
Ezt az állományt nyisd meg a böngészőben, és ha 5mp múlva nem kerülsz a HUP-ra, akkor ez is lehet egy ok.
--
A gyors gondolat többet ér, mint a gyors mozdulat.
- A hozzászóláshoz be kell jelentkezni
Kipróbáltam a megadott példát. FireFox megoldja, de a MiniBrowser nem. Csak ennyit ír ki folyamatosan:
5 másodperc múlva megyünk a HUP-ra!
Van valami ötletetek, hogyan lehetne mégis megetetni a MiniBrowser-vel az adott PHP-s oldalt?
- A hozzászóláshoz be kell jelentkezni
Lecsereled a HTML megjelenito kontrollt valami masra.
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
További érdekesség:
Ha a FireFox-ban megnyitom a kérdéses PHP oldalt, és a generált HTML fájlt lementem a saját könyvtáramba, akkor a lementett fájlt már meg lehet nyitni a MiniBrowser-vel.
Tehát nem magának a HTML fájl megjelenítésével van gondja, hanem ezt a HTML generálási folyamatot nem tudja jól követni.
Nem lehet valami olyasmi, hogy a szerver jelzi, mikor van kész az oldal, és ezt nem várja meg a MiniBrowser?
- A hozzászóláshoz be kell jelentkezni
Azon gondolkodtam még, hogy a PHP oldal megjelenítésekor nem elég csupán az oldalt megjeleníteni, mint egy normál HTML fájl esetén, hanem közölnünk kellene, hogy melyik fájlt akarjuk letölteni. Tehát a böngészőnknek először meg kellene adnia, hogy az adott fájlt akarjuk letölteni, és a PHP ennek megfelelően generálná az oldalt.
Ez talán azért is valószínű, mert válaszként egy olyan oldalt kapunk, ami a fájl hiányát nyugtázza. Természetesen, ha nem kérünk semmit, arra nem is kapunk megfelelő válasz a PHP-től.
Elképzelhető, hogy ez az adatközlés hiányzik a PHP felé?
- A hozzászóláshoz be kell jelentkezni
Egyre erdekesebb! :^D
Szerintem elso lepeskent nezz at egy HTTP protokoll leirast, hogy ne irj ekkora butasagokat. Aztan gondolkozz el azon, hogy bolcs otlet-e egy bongeszot egy relative primitiv HTML motorra alapozni, melyet valoszinuleg sugo oldalak meg hasonloan egyszeru dokumentumok megjelenitesere szantak!
----------------------
"ONE OF THESE DAYS I'M GOING TO CUT YOU INTO LITTLE PIECES!!!$E$%#$#%^*^"
- A hozzászóláshoz be kell jelentkezni
primitiv HTML motorra
?Akkor milyen (lehetőleg Java alapú) nem primitív motort tudnál javasolni?
- A hozzászóláshoz be kell jelentkezni
pl. http://lobobrowser.org/browser/api-info.jsp
Szerk.: meg nézd meg ezt, ez nekem rendesen lekezelte a hivatkozott oldalt.
--
A gyors gondolat többet ér, mint a gyors mozdulat.
- A hozzászóláshoz be kell jelentkezni
meg nézd meg ezt, ez nekem rendesen lekezelte a hivatkozott oldalt.
Nálam a megadott "Simple" browser sem működik helyesen. Valami beállítási gond lehet a gépemen? (UBUNTU 8.04, JDK 1.6)
A Lobo jól működik.
Viszont nem találom sehogyan a Lobo forráskódját. Pedig nyílt forrásúnak emlegetik.
- A hozzászóláshoz be kell jelentkezni
Viszont nem találom sehogyan a Lobo forráskódját. Pedig nyílt forrásúnak emlegetik.
Mert nem nézel körül... :/ Baloldalt, menü -> Source Code
Ott szépen le van írva, hogy hogyan kell Eclipse alatt CVS-ből lezúzni a kódot. Utána meg elolvasod a doksit itt és próbálsz önállósodni. :)
--
A gyors gondolat többet ér, mint a gyors mozdulat.
- A hozzászóláshoz be kell jelentkezni
Köszönöm! Megnézem. Csak akkor az ECLIPSE-t is le kell töltenem hozzá. Nálam NetBeans van jelenleg.
- A hozzászóláshoz be kell jelentkezni
Akkor a 2. link való neked. Az a NB tutorial.
--
A gyors gondolat többet ér, mint a gyors mozdulat.
- A hozzászóláshoz be kell jelentkezni
QtJambi -> WebKit
http://doc.trolltech.com/qtjambi-4.5.2_01/index.html -> com.trolltech.qt.webkit
- A hozzászóláshoz be kell jelentkezni
Köszönöm!
(Szoktam néha napján Qt-ban is programozni.)
Néztem, hogy a QtWebKit rendelkezésre áll a C++ nyelven is. Még eldöntöm, hogy a Java vagy a C++ legyen a programozási nyelv, ha ez tényleg jó.
- A hozzászóláshoz be kell jelentkezni
"Qt-ban is programozni"
Miben? (Tudom, náci vagyok.)
--
unix -- több, mint kód. filozófia.
Life is feudal
- A hozzászóláshoz be kell jelentkezni
Jessszusom!!!
ha halott lennék, már alagutat fúrtam volna, a forgolódással :)
- A hozzászóláshoz be kell jelentkezni
Ahogy fentebb írták, a böngészőnek halvány lila balsejtelme sem kell, hogy legyen arról, miként keletkezett a válaszként kapott HTML, tehát tök mindegy, hogy egy statikus file "felolvasásával" és visszaküldésével, vagy bármilyen program által generáltan, vagy akár a kis kínai gépeli be consol-on :) . Lehetséges okok:
- PHP valamiért rossz, vagy olyan HTML-t generált, amire nem vagy felkészülve. Csinálj egy olyan php file-t, amiben első körben csak statikus részek vannak, aztán fokozatosan tedd bele az echo, stb részeket. Itt kiderülhet, hol a bökkenő
- Valamiért eltérő content-type-al jön a válasz, amit nem kezelsz
- Valamiért kapsz olyan extra header-t, amit nem, vagy nem jól kezelsz.
Más különbséget nem nagyon tudok kigondolni.
- A hozzászóláshoz be kell jelentkezni
Nekem van egy oldalam, ahol a html-t változókba gyűjtögetem, tehát nem szépen tabulálva meg minden, csak úgy masszaként. Minden böngészőben jól működik, kivéve a chrome-ot, ott az egyik input mező helyett néha ki van írva a kód fele. Frissítés után megjavul. A chrome gyors, csak nem pontos :) (Amúgy css műveletek esetében kifejezetten lassú)
- A hozzászóláshoz be kell jelentkezni
tipikusan egy egy lemaradt idezojel hiba. (tag attribnal)
- A hozzászóláshoz be kell jelentkezni
nem az. amúgy az mitől működne "tipikusan" refresh után?
- A hozzászóláshoz be kell jelentkezni
subscribe
- A hozzászóláshoz be kell jelentkezni
Nézegettem a PHP által generált HTML fájlt.
Ez van az elején:
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
Elképzelhető, hogy a Java még nem tud mit kezdeni ezzel a verzióval?
- A hozzászóláshoz be kell jelentkezni
Ez most komoly, hogy azt hiszed a php oldalt nem a webserver, hanem a webkliens generálja le????
- A hozzászóláshoz be kell jelentkezni
Micsoda ötlet! Levédetem! Enyhítsük a szerver kínjait! Dolgozza fel a kliens a PHP kódot!
--
unix -- több, mint kód. filozófia.
Life is feudal
- A hozzászóláshoz be kell jelentkezni
subscribe +1 :D
- A hozzászóláshoz be kell jelentkezni
Ha túljutottál a php és apache configokon, meg a mime és egyéb csodákon, akkor jobb ha tudod, hogy ez a "Minibrowser" a java api JEditorPane-jét használja a renderelésre ami a default böngésződ renderjét használja natívan, tehát valójában semmi saját nincs itt csak egy java wrapper...
Ha tényleg "saját" böngészőt akarsz (java-ban), saját parser, js, css stb, akkor nézd meg ezt: http://lobobrowser.org/cobra/getting-started.jsp
- A hozzászóláshoz be kell jelentkezni
A "default bongeszod renderjet"?
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
text/html
HTML text. The kit used in this case is the class javax.swing.text.html.HTMLEditorKit which provides HTML 3.2 support.
Ez akkor valami fallback?
--
A gyors gondolat többet ér, mint a gyors mozdulat.
- A hozzászóláshoz be kell jelentkezni
Ezen akadtam ki en is. A java tudtommal nagyon minimalis kulso libre tamaszkodik, linux alatt gyakorlatilag az X meg az ALSA az egyetlen, amitol explicite fugg, es a Gtk es Nimbus temak fuggnek meg a Gtk libjeitol. Es ezzel el is ertunk a Java fuggoseglistajanak vegere, semmilyen brozertol meg ilyesmitol nem fugg. Illetve egyetlen esetben fugghet: ha kivalasztod, hogy plugint is akarsz.
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Arra a végeredményre jutottam, hogy a sütik nem elfogadása a magyarázat a dologra. Az egyszerű browser progik nem képesek a sütiket elfogadni. A letöltő oldal pedig vizsgálja (a sütik segítségével), hogy hogyan jutottál az adott oldalra. Ha nem úgy, ahogy azt ő szeretné, akkor nem enged letölteni, és ekkor egy olyan alapértelmezett oldalt dob, amin nincs letöltési lehetőség.
Ha tehát rá tudom venni a browser progimat, hogy kezelje a sütiket megoldódhat a feladat.
- A hozzászóláshoz be kell jelentkezni