Не работает переход по ссылкам в админ-части сайта

Статус
В этой теме нельзя размещать новые ответы.

mydobermann

Создатель
Регистрация
1 Дек 2007
Сообщения
32
Реакции
2
Заранее прошу прощения, если не в тот раздел - но, как мне кажется, этот раздел наиболее приближенный к теме моего вопроса.

Вступление.
Сайт несколько лет назад делала некая студия. Сейчас возникла необходимость переезда на новый сервер. Все файлы были перетянуты, все подключено на новом месте, но в админке сайта наблюдается "косяк":

При нажатии на любой пункт меню - ссылка в строке браузера меняется, но фактически страница перезагружается на главную админки, т.е. переход по меню не происходит - мы как были на странице "приветствия", так и остались:

Пример - нажали на ссылку "редактировать разделы Новостей", ссылка в строке браузера поменялась на ...config=news, но фактически опять открылась страница "главная":

Для просмотра ссылки Войди или Зарегистрируйся

На старом сервере при нажатии на ссылку ... открывалась нужная страница:

Для просмотра ссылки Войди или Зарегистрируйся

Ребят, помогите, не могу рамы собрать.. куда копать? ..

ps. в логах журнала ошибок сервера - пусто.
 
Так видно только генерируемый html, а почему он генерируется именно так, не видать. Поэтому сложно сказать в чем косяк. Глянуть бы /admin/index.php на предмет секции
PHP:
if(isset($_GET['config']))
или
PHP:
if($_GET['config']=='news')
или еще что-то вроде того.
 
Глянуть бы /admin/index.php
вот он:
Код:
<?php
error_reporting(0);
$folder_programm="programm";
$folder_resource="resource";
$folder_config=$folder_resource."/config";
include($folder_programm."/blockz.php");
$mysql=new MySQL;
$mysql->start();
$admin_block=new AdminBlock;
print $admin_block->start();
$mysql->stop();
?>
Надеюсь на Вашу помощь! :)
 
Всё несколько запутаннее... :)
А почему не обратиться к той самой "некой студии"? Если не вариант, тогда нужно нанимать программера, чтоб разбирался. Заочно врядли возможно помочь в вашей проблеме.
 
Жаль. Больше я никаких данных предоставить не смогу? :(
На одном дружеском форуме предположили вариант - Для просмотра ссылки Войди или Зарегистрируйся, однако мне мануал мало чем помогает в решении вопроса :(
 
А что у вас за новый сервер? Выделенный(dedicated), VPS/VDS или виртуальный хостинг? Если первый или второй вариант, тогда очень просто проверить догадку с "дружественного форума" :) В файле php.ini установите register_globals в значение on:
PHP:
 register_globals = On
. И посмотрите оживет ли админка. Если же вариант хостинга у вас третий, тогда можете попробовать создать файл(если его еще нет) с названием .htaccess в корневой папке сайта и запишите в него:
PHP:
php_flag register_globals on

Если то, что описано выше помогло, тогда прошу ознакомиться со Для просмотра ссылки Войди или Зарегистрируйся. После прочтения рекомендую все таки избавиться от этого геморроя :)

Для данного случая('редактировать разделы Новостей') нужно искать место использования переменной $config, конкретнее - сравнение на равенство или неравенство со строкой 'news'. Если будет найдено, тогда необходимо подобные переменные заменить на $_GET['config'].

Еще вариант напоследок: попробуйте в /admin/index.php поменять
PHP:
error_reporting(0);
на
PHP:
error_reporting (E_ALL);
и посмотреть не выдаст ли интерпретатор ошибку.
 
PHP:
<?php
error_reporting(0);

extract ($_GET); // Here is the change

$folder_programm="programm";
$folder_resource="resource";
$folder_config=$folder_resource."/config";
include($folder_programm."/blockz.php");
$mysql=new MySQL;
$mysql->start();
$admin_block=new AdminBlock;
print $admin_block->start();
$mysql->stop();
?>
 
gres_18
да, мы на ВПСе. Попробовал register_globals = On - заработало, в таком случае произвел следующие изменения, которые предложил diavolic:
PHP:
<?php
error_reporting(0);
extract ($_GET); // Here is the change
$folder_programm="programm";
$folder_resource="resource";
$folder_config=$folder_resource."/config";
include($folder_programm."/blockz.php");
$mysql=new MySQL;
$mysql->start();
$admin_block=new AdminBlock;
print $admin_block->start();
$mysql->stop();
?>
Помогло!!! :) СПАСИБО!
Больше никаких дополнительных изменений производить не нужно?
 
Больше никаких дополнительных изменений производить не нужно?
Ну, я бы все же перевел скрипт на
Код:
register_globals = Off
. Но для этого нужно иметь определенный уровень подготовки. Проще говоря, вам придется нанять человека и платить ему деньги. Следовательно - работает и ладушки. Успехофф! ;)
 
gres_18
это все делается именно так, как писали Вы выше (ссылка на статью)?
В случае как сейчас - чем это чревато?
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху