Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Нуб, которого заставили...
Форумы портала PHP.SU » » Если скрипт не работает » Нуб, которого заставили...

Страниц (2): [1] 2 »
 

1. ColdRaven - 05 Декабря, 2011 - 12:40:58 - перейти к сообщению
...Это было ранним утром 9 декабря 2010 года...Ко мне приперся пьяный друг-прогер. Он знал, что я скитаюсь в поисках работы. Он пришел ко мне, чтобы помочь, но все оказалось намного страшнее, чем мы оба думали...

...бла-бла-бла...

...И сегодня мне показали php код и сказали его переделать, а я не знаю, как его переделать...


Печальную историю прослушали, теперь к делу...
Проблема такая:

Сую в ячейку таблицы базы данных mysql (тип данных varchar, кодировка cp-1251) простенький кусок кода (<? include 'text.txt' ?>). Выводится он на странице так:
"<!--?include('text.txt')?-->"

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

Спасибо
2. EuGen - 05 Декабря, 2011 - 12:42:53 - перейти к сообщению
ColdRaven пишет:
И сегодня мне показали php код

Вот и нам покажите, без фактов ничего сказать нельзя.
3. Microteam - 05 Декабря, 2011 - 12:47:24 - перейти к сообщению
::facepalm::
Вообщето он выводится вообще не должен, это же скрипт пхп....
4. ColdRaven - 05 Декабря, 2011 - 12:50:12 - перейти к сообщению
Microteam пишет:
Вообщето он выводится вообще не должен, это же скрипт пхп....


я осознаю что я пока еще очень далек от тех глубин познания php и mysql, к которым Вы подобрались, но не могли бы Вы подсказать, что надо сделать, чтобы этот код выводился? или где прочитать о том, что надо сделать, чтобы этот код выводился?
(Добавление)
EuGen пишет:
Вот и нам покажите, без фактов ничего сказать нельзя.


Его очень-очень много.

По сути Вы правы, много чего недосказал.
Есть CMS (не популярная ни разу, вообще писалась криворукими какими то знакомыми знакомых одного чела который тут пару лет назад работал) но на новую тратиться никто не хочет.
По сути они все особо ничем не отличаются, но в этот раз мне попалось нечто. В самой "админке" я разбираться не стал, поставил навик и начал прям там править содержимое страниц.

Помимо прочего (текста и картинок) вставляю в ячейку (параметры в прошлом сообщении) код <? include 'text.txt' ?>. На странице он выводится нерабочим и закомментированным в виде (я уже показывал).

Мне кажется, что показывать весь этот, простите, код, глупо. Подскажите, что именно и где примерно мне искать, чтобы помочь вам помочь мне...
5. Microteam - 05 Декабря, 2011 - 12:54:06 - перейти к сообщению
Ну берете свой текст засовывете в функцию htmlspecialchars(); и выводите):

PHP:
скопировать код в буфер обмена
  1.  
  2. $text = "Ваш текст";
  3.  
  4. print(htmlspecialchars($text));
  5.  
6. tuareg - 05 Декабря, 2011 - 12:55:39 - перейти к сообщению
либо eval? либо str_replace? Скорее всего второе+первое
7. ColdRaven - 05 Декабря, 2011 - 12:56:33 - перейти к сообщению
И вот что получаю:

<!--? $text = "Ваш текст"; print(htmlspecialchars($text)); ?-->


Вопрос скорее о том, каким способом может быть реализовано автоматическое комментирование при попытке вывода php из ячейки таблицы mysql, чтобы найти его в этой груде кода и ликвидировать.
8. tuareg - 05 Декабря, 2011 - 13:22:04 - перейти к сообщению
Давайте проще сделаем Улыбка . Все-таки выложите код. И что Вы хотите
Т.е у Вас в БД(поле тип varchar) есть конструкция <? include('файл')?>. Вы ее выводите, а она не срабатывает?
9. ColdRaven - 05 Декабря, 2011 - 13:26:00 - перейти к сообщению
tuareg, Скажите, что именно мне надо показать? Какую часть кода? Вернее, что должна делать та часть кода, которую мне надо показать?

Да, у меня БД, поле тип varchar, есть конструкция <? include('файл')?>, я ее вывожу и они не просто не срабатывает, она выводится уже закомментированная и не срабатывает.

повторю, при даже вставке в ячейку таблицы "<??>" на выходе я получаю <!--??-->
10. tuareg - 05 Декабря, 2011 - 13:28:40 - перейти к сообщению
Вот и заменяйте <!--??--> на <??>, а потом eval
11. Данил_123 - 05 Декабря, 2011 - 13:30:10 - перейти к сообщению


Вот такое оформление, вам ведь это надо?
12. ColdRaven - 05 Декабря, 2011 - 13:31:50 - перейти к сообщению
tuareg, направьте, пожалуйста, на статью о функции, которую надо использовать для замены. Я только явой умею, но думаю, она не поможет.
Данил_123, <?php //бла-бла-бла ?> на выходе дает <!--?php //бла-бла-бла ?-->
13. Данил_123 - 05 Декабря, 2011 - 13:33:43 - перейти к сообщению
ColdRaven вы это в .html сохраняете и как вы выполняете скрипт?
14. ColdRaven - 05 Декабря, 2011 - 13:38:00 - перейти к сообщению
Данил_123 пишет:
ColdRaven вы это в .html сохраняете и как вы выполняете скрипт?


Я это не сохраняю как файл. Я это пишу в ячейку таблицы.
15. Данил_123 - 05 Декабря, 2011 - 13:48:17 - перейти к сообщению
ColdRaven поясните нормально что вам надо?

 

Powered by ExBB FM 1.0 RC1