Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Błąd w php?, Sam odkryłem :D
varez
post
Post #1





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


Opisze Wam jak to dzis odnalazłem prawdopodobnie buga w php, i niech mi ktos powie czy to jest mozliwe, gdyz myslalem ze php jest tak napisane, ze cos takiego sie nie powinno zdarzyc.

Otóż wybierałem sobie z bazy sporą liczbe rekordów (6 000 + ich pasujace odpowiedniki z innej tabeli, czyli razem cos jakbym mial tablice 6000 x 20 elementów, gdzie nie bylo wiekszej kolumny od VARCHAR 255), i potem mialem je wyświetlic w polu <SELECT>.
jako ze kiedystam zmienialem sposob wybierania rekordow, to zostaly mi w skrypcie zle "odwolania" do elementow tablicy.
i tak zamiast $dane['nazwa_firmy'] wybieralem cos w rodzaju $dane['firmy']['nazwa_firmy'].

kod byl mniej wiecej taki:

Kod
foreach ($tablica as $dane) {
   $tekst.='<option value="'.$dane['id'].'">'.$dane['firmy']['nazwa_firmy'].'</option>';
}

echo $tekst;

Zgodnie z logika spodziewalem sie pustych <option>-ów, i po czesci tak wlasnie bylo, ale do pewnego momentu:
Kod
<option value="4312"></option><option value="4313"></option><option value="4314"></op="3316"></option><option value="3317"></option><option value="3318"></option>
po chwili numerki leciały juz dalej
<option value="4316"></option>

itd..
ale przy ktoryms zamknieciu znowu wygladalo to tak:
Kod
</op="3316"></option>

(znowu dokleił sie znikad ten sam kawałek kodu)
potem jeszcze kolejny raz,
za to w innym miejscu pojawiło mi się

Kod
</op<!DOCTYPE html PUBLIC ..... i cała reszta początku strony


Strone buforuje przed wyswietleniem, podejrzewam ze stamtad pobralo mi ten kawalek i wepchalo go gdzies posrodku zmiennej $tekst.
Zmienna $dane podejrzewam ze miala ok 6MB, wygenerowana tresc (HTML w buforze) mial ok 10MB, zmienna $tekst ok 8-9MB. w php.ini limit pamieci 128MB albo 64MB.

Spotkał sie ktos z czyms takim? Zeby wybierało cuda z pamieci przy odwolywaniu sie do nieistniejacej zmiennej?

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
varez
post
Post #2





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


Cytat
Błąd w php" - jesteś pewien?

Nie, nie jestem pewien, temu służy pytajnik, którego prawdopodobnie jeszcze nie dostrzegłeś (bo nawet mi go wyciąłeś cytując).

Cytat
Wiec jak chcesz się upewnić, że to błąd to szukasz informacji na ten temat i robisz znacznie więcej operacji, które ten "błąd" potwierdzają.

Nie spodziewałem się takiego zachowania z żadnej strony - ani od php, ani tymbardziej od przegladarki (a nawet wszystkich). Dlatego tu napisałem.

Cytat
"Sam odkryłem " - no i?

Ok, zapamiętam, że razi Cię mój luźny styl. Mnie może razić to, że czepiasz się byle czego (poważnie), zamiast zająć się czym pożytecznym.

Motyw z urzędem patentowym do mnie "nie przemawia", ale w koncu myslimy inaczej.

Cytat
Tylko dzieci tak piszą. A precyzyjniej "dzieci neo".

To opóźnienie STRASZNEJ PRAWDY do drugiego zdania ma mnie przestraszyć czy zawstydzić czy co? Wyzywanie od dzieci neo jest conajmniej tak samo śmieszne jak one same (chyba ze mowimy o przypadkach krytycznych).

Cytat
To, że sie nie rozliczasz nie oznacza, ze nie możesz wyrazić własnego zdania.

Własne zdanie wyraziłem na forum, ale sposób się nie spodobał, widać nie jestem w tym dobry.
A w mojej wypowiedzi, że się nie rozliczam, chodziło mi o to, że się nie rozliczam, a nie, że nie wyrażam własnego zdania..

Pozdrawiam serdecznie wookieb (IMG:style_emoticons/default/smile.gif)

Ten post edytował varez 26.08.2009, 21:09:52
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 02:58