Проблема со скриптом или MySQL?

Jalart

Новичок
Проблема со скриптом или MySQL?

Здравствуйте.

Помогите, плз, разобраться с проблемой:
Есть скрипт URL.PHP, который обращается к БД
PHP:
if ($_GET['form']=='edit')
  $row=$db->html_selecta("select *,region as region,yoururl as yoururl, descr$LNG as descr,descrF$LNG as descrF, bannercode as bannercode from url where id=".round($_GET['id']));
В результате выдается сообщение об ошибке:
===============================================================
Неверный запрос: select u.*,'1' as perm_hit,h.hit,u.descrRUS as descr,u.region as region,u.descrFRUS as descrF,u.bannercode as bannercode,users.name as user_name,users.login as user_login,'0' as order_set,0 as rid from url u left join users on u.uid=users.id left join hit h on u.id=h.mid and h.module='url' where u.confirm order by u.id=36 desc,u.id=76 desc,u.id=89 desc,u.id=121 desc,u.id=147 desc,u.id=149 desc,u.id=156 desc,u.id=163 desc,u.id=161 desc,u.id=331 desc,u.id=181 desc,u.id=190 desc,u.id=209 desc,u.id=212 desc,u.id=217 desc,u.id=224 desc,u.id=412 desc,u.id=424 desc,u.id=215 desc,u.id=441 desc,u.id=551 desc,u.id=580
..................часть текста удалена..................
desc,u.id=10026 desc,u.id=10050 desc,u.id=10130 desc,u.id=10212 desc,u.id=10233 desc,u.id=10225 desc,u.id=10285 desc,u.id=10302 desc,u.id=10361 desc,u.id=10415 desc,u.id=10416 desc,u.id=10521 desc limit 0,10
Ошибка: Out of memory; restart server and try again (needed 1048568 bytes)
===============================================================

Вот фрагмент файла my.cnf
===============================================================
sql-mode=NO_UNSIGNED_SUBTRACTION
#set-variable=query_cache_size=524288
set-variable=query_cache_size=1024000
set-variable=bdb_cache_size=0
#set-variable=bulk_insert_buffer_size=524288
set-variable=bulk_insert_buffer_size=1024000
set-variable=key_buffer=16M
set-variable=max_allowed_packet=2M
set-variable=table_cache=64
#set-variable=sort_buffer_size=512K
set-variable=sort_buffer_size=1M
set-variable=net_buffer_length=8K
set-variable=myisam_sort_buffer_size=8M
skip-innodb
skip-bdb
port=3306
socket=/tmp/mysql.sock
skip-external-locking
default-character-set=cp1251
===============================================================

Вроде ресурсов памяти достаточно.

Между прочим, упомянутый выше скрипт корректно работал вчера, на следующий день начал выдавать это сообщение об ошибке (см. выше). MySQL-cервер перезагрузил - не помогло.

Заранее спасибо.

С наилучшими пожеланиями,
Владимир.
 

Фанат

oncle terrible
Команда форума
непонятно, почему запрос, который нарисован в начале, не похож на тот, который в сообщении об ошибке
 

Jalart

Новичок
Автор оригинала: Фанат
непонятно, почему запрос, который нарисован в начале, не похож на тот, который в сообщении об ошибке
Вот полный текст скрипта

PHP:
<?
include "../../global.lib";

permission::check_show_error('url','view');
personalConfig::_save_next_do($POST['next_mode']);

$error_was=$ERROR[0];
if ($_GET['form']=='edit')
	$row=$db->html_selecta("select *,region as region,yoururl as yoururl, descr$LNG as descr,descrF$LNG as descrF, bannercode as bannercode from url where id=".round($_GET['id']));

module::_fill_cache_by_sysname('url');

if ($_GET['form']) {
	if ($_GET['form']=='print') {
		$t=new templ('admin/form/url.print');
		}
	else {
		$t=new templ('admin/form/url');
		foreach ($languages as $lng=>$descr)
			$t->block['lng']->addrow(array(
				'default_lng'=>$LNG,
				'lng'        =>$lng,
				'region'        =>($error_was)?$POST['region']:$row['region'],
				'lng_descr'  =>$descr,
				'yoururl'    =>($error_was)?$POST['yoururl']:$row['yoururl'],
				'descr'      =>($error_was)?$POST['descr'.$lng]:$row['descr'.$lng],
				'descrF'      =>($error_was)?$POST['descrFRus']:$row['descrFRus'],
				'bannercode'      =>($error_was)?$POST['bannercode']:$row['bannercode']
				));

		
		if ($_GET['form']=='edit')
			$t->change($row);
		else
			if ($error_was) {
				$POST['descr']=$POST['descr'.$LNG];
				$POST['descrF']=$POST['descrF'.$LNG];
				$t->change($POST);
				}
		}
	}
else
	$t=new templ('admin/url');

$rubric=new rubric();
if (!$t->vars['rid'])
	$t->change(array(
		'rid'=>round($_REQUEST['rid']),
		'rubric_name'=>$rubric->path(round($_REQUEST['rid']),0,'lib/rubric/path.plain')
		));

$t->change(array(
	'module_name'=>$cache->cache['module']['url']->name,
	'page'=>round($_REQUEST['page']),
	'form'=>$_GET['form'],
	'default_lng'=>$LNG,
	'act'=>$act
	));

$t->change($config->param['personal'.$PERSONAL]);

$t->show();
?>
-~{}~ 12.09.06 17:09:

Я дальше покопаюсь, потом выложу то, что соответствует сообщению.
 
Сверху