[ vbbojan @ 21.12.2013. 23:55 ] @
Mrsim nesto u php, jenostavna stvar ...

Upitom iz baze dovlacim skup podataka koji u petlji formatiram u html tabelu.
Sve radi dok velicina outputa ne naraste nesto preko 100kb (Petlja lepo prolazi i strlen() uvek pokaze ocekvianu duzinu stringa)
Ali cim duzina stringa / outputa predje tih 100-nak kb dobijem samo "white screen of death", nema nikakvog outputa.

Probao sam da outputujem string odjednom, zatim sam probao da idem red po red, ali uvek isto cim predje tih 100-nak kb -- wsod
Petljao sam sa output bufferima, ali izgleda da nije ni tu problem.
Prekopao sam sve apache i php error logove koje sam pronasao, no ne nadjoh nista ...

Smrdi mi na Apache, ali ne znam sa koje strane.

Znam da bi pagination resio problem, ali u ovom slucaju to ne zelim, jer je u pitanju jendokratna upotreba.

Ima li neko ideju gde zapinje?

U pitanju je shared hosting (Gator)
PHP 5.2.17
Apache 2.2.24 ili 2.2.25

Hvala i pozdrav.
[ deZio @ 22.12.2013. 04:23 ] @
Probao sam sad na HG serveru i radi mi ok echo sa većim stringom.

Ovo je kod koji sam koristio, pa probaj i ti:

Code (html):
<?php header('Content-Type: text/plain'); ?>
<!doctype html>
<html lang="en">
<head>
     <meta charset="UTF-8">
     <title>Document</title>
</head>
<body><?php
     $test = '';
     for ($i=0; $i < 1000; $i++) {
          $test .= str_repeat('a', 10000) . ' ';
     }
     echo $test;
?>
</body>
</html>


P.S. Ako želiš koristiti PHP 5.3 ili 5.4 na HG serveru, potrebno je da dodaš jedan od ovih kodova u tvoj .htaccess:

Code:
# Use PHP 5.3
AddType application/x-httpd-php53 .php


Code:
# Use PHP 5.4
AddType application/x-httpd-php54 .php
[ vbbojan @ 22.12.2013. 09:52 ] @
Hvala na pomoci, tvoj primer mi je pomogao da shvatim da nije u pitanju velicina outputa.

Posle sam krenuo jos jednom da proveravam kod i naleteh da imam sintaksnu gresku u atributu <tbody> taga...
Posle ispravke je proradilo ... sto ce reci ovo nije imalo nikakve veze sa php.

E sad, zasto sve izgleda i radi normalno dok broj redova u tabeli ne predje odredjen broj nemam pojma.
Zanima me ima li neko ideju zasto je ovo pucalo zbog loseg html-a u slucaju kada velicina tabele preraste odredjen broj redova?

Testirao sam slucaj u samo dva browsera IE i Firefox i nema razlike u ponasanju.

Jos jednom se zahvaljujem i pozdrav.



[ deZio @ 22.12.2013. 11:37 ] @
Verovatno je bug browsera, tj. nije mogao "ispeglati" grešku u kodu za veliku tabelu.. Browseri se obično lako izbore sa greškama koje ponekad budu ostavljene u htmlu, ali eto očigledno imaju problem kada je potrebno da isprave stranicu sa puno koda..