Добрый день,
Потребовалось вставить php-код на страницу на сайте под движком Drupal.
Код до сих пор живет и работает отдельно вполне нормально.
Проблема в том, что при вставке возникли проблемы с кодировкой, но я смог их все исправить, кроме одной строки. Она нереально "зашифрована".
Оригинальная страница была в Windows-1251. По крайней мере русский текст именно в ней.
Прошу вашей помощи, мне нужно понять что было в оригинале в этой строке (так она выглядит в разных вариантах декодирования):
После "Штирлица" в Notepad++:
Оригинальный файл в Notepad++:
$season_str .= sprintf("<option value=\"$lsid\" $add>с %02d/%02d по %02/%02d</option>", $d_f, $m_f, $d_t, $m_t);
После сохранения и обработки скрипта в виде (лучшее, что я смог придумать):
$season_str .= sprintf("<option value=\"$lsid\" $add>с "d/"d по "/"d</option>", $d_f, $m_f, $d_t, $m_t);
сервер выдает:
Parse error: syntax error, unexpected T_STRING in /home/holiday/public_html/includes/common.inc(1696) : eval()'d code on line 538 << - это как раз эта строка
Если нужно, могу выложить весь код.
Спасибо за помощь!
Комментарии
[b]Когда я вставляю оригинальный код, то ошибка:[/b]
Parse error: syntax error, unexpected '}' in /home/holiday/public_html/includes/common.inc(1696) : eval()'d code
Оригинальный код:
<?php$season_str .= sprintf("<option value=\"$lsid\" $add>с %02d/%02d по %02/%02d</option>", $d_f, $m_f, $d_t, $m_t); ?>
ХЗ что у вас там с кодировкой, а проблема в том что не экранированы кавычки.
Попробуйте так:
<?php
$season_str .= sprintf('<option value="$lsid" $add>с %02d/%02d по %02/%02d</option>', $d_f, $m_f, $d_t, $m_t);
?>
или так:
<?php
$season_str .= sprintf("<option value=\"$lsid\" $add>с \"d/\"d по \"/\"d</option>", $d_f, $m_f, $d_t, $m_t);
?>
или вот так:
<?php
$season_str .= sprintf("<option value=\"$lsid\" $add>с 'd/'d по '/'d</option>", $d_f, $m_f, $d_t, $m_t);
?>