Fatal error: Allowed memory size of X bytes exhauste

kriss

Registered
Грешка:
Fatal error: Allowed memory size of 100663296 bytes exhausted (tried to allocate 71 bytes) in /www/root/nqkavfail.php on line 16
Редове 15,16,17
PHP:
if($r['url'.$i]){
	$url_p[] = $r['url'.$i];
	$k++;
ПП: пробвах
memory_limit = 16M ;
и няма значение колко го слагам все не става
 
Имах същия проблеми преди 2 дни,увеличиха лимита на 128 и всичко е ок.Но ако при теб не се оправя значи проблема идва от начина на кода, и може да дава 16 ред но причината да е нагоре в кода...
 
Както казах няма разлика, дори и 1024 да го сложа..
Ако някой знае друго решение може да сподели. Aз временно промених изцяло проблемния код.
 
Код:
100 663 296 bytes = 96 megabytes

Като промени настройките рестартира ли сървъра?
 
Ако си реснал и всичко е наред с паметта но реално не е в нея проблема, то е ясно,че е в скрипта,сега въпроса е ,че си дал само 2-3 реда от него а проблема може да е съвсем другаде , пак казвам...
 
deam0n каза:
Код:
100 663 296 bytes = 96 megabytes

Като промени настройките рестартира ли сървъра?
Това е на споделен хостинг..

Ако си реснал и всичко е наред с паметта но реално не е в нея проблема, то е ясно,че е в скрипта,сега въпроса е ,че си дал само 2-3 реда от него а проблема може да е съвсем другаде , пак казвам...
PHP:
<?php
	include('header.php');
	$id = isset($_GET['id']) ? (int)$_GET['id'] : 0;
	$part = isset($_GET['part']) ? (int)$_GET['part'] : 1;
	mysql_query("SET NAMES UTF8");
	if($id>0){
		$query = mysql_query("SELECT episodes.*,series.title FROM `episodes` INNER JOIN `series` ON (`episodes`.`serialid`=`series`.`id`) WHERE episodes.`id` = '$id'")or die(mysql_error());
		if(mysql_num_rows($query)){
			mysql_query("UPDATE series SET `views`=`views`+1 WHERE `id`='$id'");
			$r = mysql_fetch_assoc($query);
			$k = 0;
			$url_p = array();
			for($i=1;$i<=5;$i){
				if($r['url'.$i]){
					$url_p[] = $r['url'.$i];
					$k++;
				}
			}
Ето това е кода преди грешката.. нищо необичайно не забелязах
 
Аз така като гледам , някой неща ми са странни и не бих ги написал така, но не знам къде точно е проблема, мога само да предложа 1-2 неща:
Код:
 if(mysql_num_rows($query)){
                        mysql_query("UPDATE series SET `views`=`views`+1 WHERE `id`='$id'");
излишно проверяваш, ако няма id подадено то самата заявка няма да се изпълни.

Код:
$r = mysql_fetch_assoc($query);
това не трябва ли да е във while() ?


пс:Според мен говори с хостинга, може да помогнат.
 

Back
Горе