Špatné chování scriptu po zpracování – Internet Explorer

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Rellik
Člen | 104
+
0
-

Zdravím, v mém projektu se vyskytla nevysvětlitelná chyba při vykreslení fotogalerie. Konkrétně:
http://nette.rellik.eu/gallery/default
Ve windows v IE to po vykreslení stránky nesmyslně přesměruje na eror 404. V ostatních prohlížečích se stránka vykreslí správně. Neví někdo proč to tak je? Nikde tam přesměrování není.
Script galerie:
https://github.com/…resenter.php
Script přidané funkce:
https://github.com/…Function.php
Díky za případné nakopnutí.

duke
Člen | 650
+
0
-

Nevím, jestli to s tím souvisí, ale když na to pustím w3c validátor, tak se ti tam generuje notice:

<b>Notice</b>: Undefined index: HTTP_ACCEPT in <b>/data/web/virtuals/11696/virtual/www/subdom/nette/app/presenters/BasePresenter.php</b> on line <b>94</b><br />
Ot@s
Backer | 476
+
0
-

Jediný soubor, který používáš v IE a který neexistuje, je http://nette.rellik.eu/…ry/hover.htc (z /css/back.php). Ještě nikdy jsem ale neviděl, aby se externím voláním z CSSka takto IE šprajcl…

Editoval Ot@s (2. 3. 2012 23:47)

LeonardoCA
Člen | 296
+
0
-

Velmi pravděpodobně souvisí problém s některým s javascriptů. Vylučovací metodou jej odhalíš, více zde: https://forum.nette.org/…louhy-script

Jinak si zkus validovat html, jedna tabulka má špatný počet prvků, ale to by IE shodit nemělo.

Rellik
Člen | 104
+
0
-

LeonardoCA napsal(a):

Jinak si zkus validovat html, jedna tabulka má špatný počet prvků, ale to by IE shodit nemělo.

Myslíš tabulku u fotogalerie že? Ta se generuje sama a o tom jednom <tr></tr> vím, ale nevím jak to donutit aby to tam nevkládalo. Dělá to jen u lichých počtů galerií nebo obrázků. Zkoušel sem různé podmínky, ale nějak se tomu nechce.
Jinak problém sem už nejspíš vyřešil. Změnil sem soubor bootstrap.php
Měl sem tam omezené použití funkce, která vyhodnocuje použití „hezkých url“

// Setup router - hezké URL adresy - mod_rewrite
//if (function_exists('apache_get_modules') && in_array('mod_rewrite', apache_get_modules())) {
    $container->router[] = new Route('index.php', 'Front:News:news', Route::ONE_WAY);

    $container->router[] = $adminRouter = new RouteList('Admin');
    $adminRouter[] = new Route('admin/<presenter>/<action>[/<id>]', 'Info:default');

    $container->router[] = $frontRouter = new RouteList('Front');
    $frontRouter[] = new Route('<presenter>/<action>[/<id>]', 'News:news');
//} else {
 //   $container->router = new SimpleRouter('Front:News:news');
//}

Když sem to odpoznámkoval, tak to funguje, ale zase nefungují hezké url. Přitom na root webu to funguje správně.
Subdoména hlásí mod_rewrite disabled
http://test.rellik.eu/
Hlavní doména je ok
http://rellik.eu/test_server/
Přitom i v subdoméně mám .htaccess kde jsou „hezké url“ nastaveny…

duke napsal(a):

Nevím, jestli to s tím souvisí, ale když na to pustím w3c validátor, tak se ti tam generuje notice: …

Když sem zapnul laděnku nevypisuje nic… Tak nevím.
Nakonec script je tady:
https://github.com/…resenter.php
94. řádek je jen podmínka if(…

EDIT: tak to byl planý poplach. Nefunguje to pořád… Jdu zkusit ty JS
EDIT II: zajímavé zjištění – pokud povolím laděnku, tak to v IE funguje.
Není to nějaký bug?

Ještě jeden edit: Kydž sem vrátil ten zakomentovaný bootstrap.php, tak hezké url fungují. Jinak co se týká funkce s IE vs. laděnka. Zůstává beze změny..

Editoval Rellik (3. 3. 2012 9:31)

LeonardoCA
Člen | 296
+
0
-

To že to s povolenou laděnkou funguje je pravděpodobně jen o tom že laděnka prodlouží čas do spuštění javascriptu, který IE shazuje a mezitím prohlížeč stačí dorenderovat prvek stránky se kterým se javascript pokouší něco provádět.

Editoval LeonardoCA (3. 3. 2012 10:18)

Rellik
Člen | 104
+
0
-

LeonardoCA napsal(a):

To že to s povolenou laděnkou funguje je pravděpodobně jen o tom že laděnka prodlouží čas do spuštění javascriptu, který IE shazuje a mezitím prohlížeč stačí dorenderovat prvek stránky se kterým se javascript pokouší něco provádět.

JS to nedělá. Zkoušel sem právě postupně odebírat jednotlivé JS, pak i všechny naráz a chyba je pořád stejná.. :-/

Rellik
Člen | 104
+
0
-

Takže nejspíš vyřešeno:
Updatoval sem Nette na poslední verzi a vypadá, že to jede jak má…
Jen ty „hezké url“ nemají zájem fungovat… :(

Paradiso
Člen | 101
+
0
-

ahoj, koukám, že jsi u Wedosu.

Mohlo by ti s routama pomoci toto: https://forum.nette.org/…-nette-wedos#…

Editoval Paradiso (3. 3. 2012 12:17)

Rellik
Člen | 104
+
0
-

Paradiso napsal(a):

ahoj, koukám, že jsi u Wedosu.

Mohlo by ti s routama pomoci toto: https://forum.nette.org/…-nette-wedos#…

Díky, ale on to určitě nebude každý kdo tu mou aplikaci bude používat na wedosu. Chtěl sem aby to bylo univerzální…
Ale co buď mu to pojede s mod_rewrite nebo ne. Jinak sem to zkusil podle toho návodu a funguje to. :)