Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Allowed memory size of...
Forum PHP.pl > Forum > PHP
juzer
Zaktualizowałem pliki na serwerze, i nagle wyskoczył mi tekst
Kod
Allowed memory size of 24117248 bytes exhausted (tried to allocate 3840 bytes) in /u/var/www/html/nowa/admin_top.php on line 1
Czym może być to spowodowane?? bo sprawdziłem plik i wszystko wygląda ok. sadsmiley02.gif
mike
Komunikat jest jasny:
Przekroczyłeś ilość dozwolonego miejsca na serwerze.
crash
Komunikat może i jasny, ale wyjaśnienie przedmówcy nie do końca. Błąd ten informuje, że wykorzystana została pamięć dostępna dla skryptów php. Zapewne skrypt wszedł w jakąś pętlę, lub dobierał się do dużych zasobów i zapchał całą pamięć...

----edit----
Mea culpa.
Masz rację, walnąłem gafę.
~mike_mech
winnetu
Mam podobny problem co juzer

Cytat
Fatal error: Allowed memory size of 20971520 bytes exhausted (tried to allocate 2 bytes) in /home/.../losowanie.php on line 2



Skrypt, którego dotyczy komunikat wygląda nastepująco:

  1. <?php
  2. for($i=0; $i<=93; $m[]="$i");
  3. $foto = rand(0, count($m)-1);
  4. $numer=$m[$foto];
  5. ?>
  6.  
  7. <html>
  8.  
  9. <head>
  10. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
  11. <META http-equiv="Pragma" content="no-cache">
  12. <META http-equiv="cache-control" content="no-cache">
  13. <META http-equiv="Expires" content="-1">
  14. <meta http-equiv="Content-Language" content="pl">
  15. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
  16. <title>Losowe zdjęcie z mojej galerii</title>
  17. <frameset framespacing="0" border="0" frameborder="0"><frame src="http://www....php?album=28&pos=<?php echo($numer); ?>" scrolling="auto" ></frameset>



Skrypt losuje z moejej galerii numer zdjecia $numer i dodaje go na koncu odpowiedniego linka, ktory wyswietla wylosowana fotke.

Zaznaczam, ze dopiero zaczynam swoja przygode z php rolleyes.gif

PS - zeby bylo smieszniej, wczoraj ten skrypt dzialal, a dzis po powrocie z pracy jak chcialem go odpalic to wyskoczyl mi w/w komunikat.

Aha, jeszcze jedno. Skrypt dziala poprawnie w momencie, gdy utworze tablice recznie tj.

  1. <? php
  2.  
  3. $m[]='1';
  4. $m[]='2';
  5. $m[]='3';
  6. .
  7. .
  8. .
  9. .
  10.  
  11.  
  12. $foto = rand(0, count($m)-1);
  13. $numer=$m[$foto];
  14. ?>


Potrafi ktos pomoc ?
cicik
[quote name='winnetu' post='298568' date='4.10.2006, 20:08:03 ']
Mam podobny problem co juzer
Skrypt, którego dotyczy komunikat wygląda nastepująco:

  1. <?php
  2. for($i=0; $i<=93; $m[]="$i");
  3. $foto = rand(0, count($m)-1);
  4. $numer=$m[$foto];
  5. ?>


Nie jest to pętla nieskończona?
Nie widzę inkrementacji $i.
Dodajesz kolejne rekordy do tablicy $m aż zapchasz całą pamięć.

EDIT
Poprawne rozwiązanie:
  1. <?php
  2. for($i=0; $i<=93; $m[]=$i++);
  3. ?>
winnetu
Dziala smile.gif

  1. <?php
  2. for($i=0; $i<=93; $m[]=$i++);
  3. $foto=rand(0, count($m)-1);
  4. echo($foto);
  5. ?>


Dzieki za pomoc.
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.