Parse error: syntax error..

Автор waxter, 05 февраля 2013, 21:18:18

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

waxter

Добрый день,  подскажите пожалуйста
(после трёх лет фунциклирования  такая бяка..)

с недельку назад поставил обновление 2.04,  а сегодня  внезапно, при попытке открыть страничку:

Parse error: syntax error, unexpected '~', expecting ')' in /var/www/web294/html/Sources/Load.php on line 172


вот она,  строчка эта:

$ent_check = empty($modSettings['disableEntityCheck']) ? array('preg_replace('~(&#(d{1,7}|x[0-9a-fA-F]{1,6});)~e', '$smcFunc['entity_fix']('2')', ', ')') : array('', '');

что не так?

Спасибо заранее.

Жека

В оригинале эта строчка выглядит так:


$ent_check = empty($modSettings['disableEntityCheck']) ? array('preg_replace(\'~(&#(\d{1,7}|x[0-9a-fA-F]{1,6});)~e\', \'$smcFunc[\\\'entity_fix\\\'](\\\'\\2\\\')\', ', ')') : array('', '');


Как видите, в вас бэкслэшей конкретно не хватает.

waxter

ЦитироватьВ оригинале эта строчка выглядит так:

на форуме стоит несколько модов,  наверно поэтому выглядит несколько иначе.

но я заменил на вашу и получил

Parse error: syntax error, unexpected T_STRING in /var/www/web294/html/Sources/Load.php on line 178

стр. 178   
$num = substr($string, 0, 1) === 'x' ? hexdec(substr($string, 1)) : (int) $string;

так наверно будут постоянно  ошибки вываливаться.


Жека

Когда дело в модах, это заметно по коду.
Здесь же видно полное соответствие оригиналу за исключением бэкслэшей.

Цитата: waxter от 05 февраля 2013, 21:44:14стр. 178   $num = substr($string, 0, 1) === 'x' ? hexdec(substr($string, 1)) : (int) $string;
Оригинал:
$num = substr($string, 0, 1) === \'x\' ? hexdec(substr($string, 1)) : (int) $string;

И снова слэшей там где надо не хватает.

Имхо, файл каким-то образом покоцался, такое ощущение, что его пропустили через функцию stripslashes().

waxter

Спасибо Вам, но как я предполагал - вызывается сл. ошибка..

как можно решит проблему с  файлом, не прибегая к откату? поможет ли простая замена на оригинальный  Load.php и где  его взять ?
у меня  ни удалённо ни локально просто ничего нет,  так получилось..   uglystupid

Mavn

из дистрибутива можно взять файл.
скачать можно с офф сайта смф.орг
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

waxter

Спасибо!  замена  файла целиком помогла  O0

GeorG

В нем делают изменения моды (вы же говорили что они у вас есть), если взяли оригинальный файл Load.php, то все эти моды (которые делали в файле изменения под себя), возможно работать не будут, если и будут, то с глюками. Посмотрите теперь "лог ошибок" форума, как там, чисто, или не очень?..
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

waxter

Цитата: GeorG от 06 февраля 2013, 06:19:08как там, чисто, или не очень?..
там  конечно жуть что твориться - в  основном  непределённые ошибки от  Aeva  и TPortal..
но работало  более менее 3 года ,  ошибок от Aeva небыло.

что теперь делать,  как не напортачить ещё более ,  а поправить по умному?
откатиться назад,  а базу подключить актуальную?

странно это,  з дня работало потом рухнуло.  мож  умельцы постарались?

GeorG

Цитата: waxter от 06 февраля 2013, 09:53:40а базу подключить актуальную?
Это какую ещё актуальную? У вас и так сейчас должна быть последняя, а ну если её назад откатить, а толку-то?

Цитата: waxter от 06 февраля 2013, 09:53:40что теперь делать,  как не напортачить ещё более ,  а поправить по умному?
Нужно было просто везде слэши проставить, если оригинальный файл не удалили, его править надо. Мавн подсказал только как избавится от ошибки, чтоб форум не простаивал, а работал. А по идеи, вам нужно оригинальный файл который выдавал ошибку исправлять, а не совсем его заменять.

Цитата: waxter от 06 февраля 2013, 09:53:40з дня работало потом рухнуло.  мож  умельцы постарались?
Просто так, ничего не бывает.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

waxter

Цитата: GeorG от 06 февраля 2013, 11:42:31Это какую ещё актуальную? У вас и так сейчас должна быть последняя, а ну если её назад откатить, а толку-то?
ну.. при откате назад  подразумевал, что файлы форума будут восстановлены до их модификации (знать бы когда их модифицировали),  а база останется актульная.

ЦитироватьА по идеи, вам нужно оригинальный файл который выдавал ошибку исправлять, а не совсем его заменять.
с этого я  и попытался..   :-[

копия то оригинального файла имеется.   как понять для не специалиста  что в нём править?

Жека

waxter
А много модов установлено?

Цитата: waxter от 06 февраля 2013, 12:37:39как понять для не специалиста  что в нём править?
Взять любое бесплатное ПО, умеющее сравнивать тестовые файлы и выводить различия.

Сравнить эти файлы, и если в строке никаких различий кроме слэшей нет, то заменить эту строчку из оригинального модуля.

waxter

ЦитироватьА много модов установлено?

1.   InLine Attachments    1.11    
2.    dQuoteSelection    2.5 b1    
3.    SMF 2.0.1 Update    1.0    
4. Cut Text    1.1.6    
5.    WYSIWYG Quick Reply    2.3    
6.    Google Member Map    2.0.8    
7.    Virtual Keyboard    1.6    
8.    Default Avatar    2.1    
9.    SMF 2.0.4 Update    1.0    
10.   Aeva Media    2.10
11.   Aeva Media RUS    1.4w [1.4.4]    
12.   PM to New Members 1.2    
13.   TinyPortal    1.104    
14.   SMF 2.0.2 Update    1.0    
15.   SMF 2.0.3 Update    1.0    
16.   Top First Post    2.0.1    
17.  Resize Attached Images    2.3.1    
18.  Nickname to Reply    0.6.4

Теперь в личку не пущает,  мдя  ..   ну как и говорили  :)
Parse error: syntax error, unexpected '[' in /var/www/web294/html/Sources/Subs-Post.php on line 166

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



Жека

#13
Мда, не мало, 12 штук, не считая апдейтов и русиков.

Цитата: waxter от 06 февраля 2013, 15:00:11Parse error: syntax error, unexpected '[' in /var/www/web294/html/Sources/Subs-Post.php on line 166
Если такая борода случилась с каждым файлом из папки Sources, то может быть и проще заменить все файлы из дистрибутива и переустановить все моды...

waxter

ЦитироватьЕсли такая борода случилась с каждый файлом из папки Sources, то может быть и проще заменить все файлы из дистрибутива и переустановить все моды...
да, возможно, что  придётся  и переустанавливать.

только что на месяц назад откатился (самый старый  бэкап).
посмотрю,  что происходить будет