Голосавание на PHP

Форум для программистов

Голосавание на PHP

Сообщение Wen » Ср фев 19, 2003 6:42 pm

Файл index.php который при загрузке использует различные templates
должен искользовать
Код: выделить все
<?php



/* path */

$poll_path = "c:/internet/home/localhost/www/poll/db";



require $poll_path."/include/config.inc.php";

require $poll_path."/include/$POLLDB[class]";

require $poll_path."/include/class_poll.php";

$CLASS["db"] = new polldb_sql;

$CLASS["db"]->connect();



$php_poll = new poll();



/* the third poll */



$php_poll->set_template_set("popup");

if ($php_poll->is_valid_poll_id(3)) {

   echo $php_poll->display_poll(3);

}





?>


который я собственно говоря и вставляю в один из templates где находится моя таблица и где должно появиться голосование. При запуске index.php вместо голосования, появляется код голосования на php (приведённый выше). Отсюде сделал вывод, что php-код не интерпретируется, вероятно из-за загрузки из template. Как обойти это проблему и сделать так чтобы php код заработал?

Благодарю всех за внимание.
Wen
Капитан
 
Сообщений: 170
Зарегистрирован: Пн окт 28, 2002 6:03 pm
Откуда: Германия
Пункты репутации: 0

Сообщение dAnIK SeNT » Ср фев 19, 2003 7:47 pm

2Wen
Ты не понял принципа <!--emo&:)-->Изображение<!--endemo-->
В темплейтах не должно быть кода PHP. Темплейты определяют лишь интерфейс, это скины, если угодно. Если ты хочешь разделить код PHP на модули, используй include и require.

<span style='color:darkblue'><span style='font-size:16pt;line-height:100%'>Now Playing: silence
I have had running my PC for 00:13:53
</span></span>
яНЯЕД ОН СОПЪФЙЕ: Athlon 64 X2 5200+ @2,86GHz / nF 570 SLI (ASUS M2N SLI Deluxe) / 4 Gb RAM (4x1Gb Kingston) / 2,9Tb SATAII (0,50+0,64+0,75+1,00Tb WD) / ASUS 8800 GTS512 / 2x NEC-Optiarc AD-7173 / Thermaltake ToughPower 650W / 2x30W Microlab Solo-2 / 20" LCD Benq FP202W (wide) / openSUSE 11.1 / KDE 4.2.1
<!--coloro:Navy--><span style="color:Navy"><!--/coloro-->оН БЯЕЛ БНОПНЯЮЛ - Б email. б ICQ ОНЪБКЪЧЯЭ ПЮГ Б ОНКЦНДЮ.<!--colorc--></span><!--/colorc-->
dAnIK SeNT
Маршал
 
Сообщений: 5101
Зарегистрирован: Чт мар 28, 2002 7:48 pm
Откуда: яяяп
Пункты репутации: 0

Сообщение Wen » Ср фев 19, 2003 8:23 pm

2dAnIK SeNT
А что же мне делать если у меня таблица, в которой должно появиться голосование находится в темлейте??? Как мне сказать этому зверю что здесь пусть он вставить моё php голосование? Я бы сделал это без темплейта, вставил бы сразу php-код голосования, но тогда он появится/отобразится не в том месте где мне нужно (вверху или внизу таблицы, а таблица это темплейт), а мне нужно чтобы он появился в одной из колонок таблицы. Подскажи как обойти эту проблему?

Спасибо за внимение <!--emo&:)-->Изображение<!--endemo-->
Wen
Капитан
 
Сообщений: 170
Зарегистрирован: Пн окт 28, 2002 6:03 pm
Откуда: Германия
Пункты репутации: 0

Сообщение dAnIK SeNT » Ср фев 19, 2003 9:13 pm

2Wen
И все-таки ты, похоже, концепции не понял <!--emo&:)-->Изображение<!--endemo-->
Шаблон - это заготовка, внутри которой особым образом выделены места, которые будут заполнены скриптами. Напрмер вот тебе пример в котором скрипт будет генерить содержимое одной ячейки таблицы:
Код: выделить все

<HTML>

<BODY>

<table>

<tr><td>

 <%PHP_WILL_BE_HERE%>

</td></tr>

</table>

</BODY>

</HTML>


Средствами PHP ты делаешь следующее:
1) загружаешь файл в переменную (конкретно функцию не помню - поищи в help'е в подразделе "file" раздела "спец. функции".
2) при помощи str_replace заменяешь все вхождения <%PHP_WILL_BE_HERE%> на то, что должно быть вставлено туда.
3) при помощи echo отправляещь окончательный вариант своей переменной, содержащей полностью сгенеренную страничку, клиенту.
Весь смысл использования шаблонов состоит в том, чтобы четко разделить код и оформление. В шаблонах по определению не должно быть ни одной строчки PHP. В PHP в общем-то допустимо использование HTML, скажем, в цикле, генерящем огромную таблицу строчка за строчкой, но таких вещей следует избегать.

<span style='color:darkblue'><span style='font-size:16pt;line-height:100%'>Now Playing: silence
I have had running my PC for 01:39:08
</span></span>
яНЯЕД ОН СОПЪФЙЕ: Athlon 64 X2 5200+ @2,86GHz / nF 570 SLI (ASUS M2N SLI Deluxe) / 4 Gb RAM (4x1Gb Kingston) / 2,9Tb SATAII (0,50+0,64+0,75+1,00Tb WD) / ASUS 8800 GTS512 / 2x NEC-Optiarc AD-7173 / Thermaltake ToughPower 650W / 2x30W Microlab Solo-2 / 20" LCD Benq FP202W (wide) / openSUSE 11.1 / KDE 4.2.1
<!--coloro:Navy--><span style="color:Navy"><!--/coloro-->оН БЯЕЛ БНОПНЯЮЛ - Б email. б ICQ ОНЪБКЪЧЯЭ ПЮГ Б ОНКЦНДЮ.<!--colorc--></span><!--/colorc-->
dAnIK SeNT
Маршал
 
Сообщений: 5101
Зарегистрирован: Чт мар 28, 2002 7:48 pm
Откуда: яяяп
Пункты репутации: 0

Сообщение Bio Wolf » Ср фев 19, 2003 9:23 pm

2dAnIK SeNT
А что делать мне:
В моем проекте целая кучай файлов, уже наберется пара тысчёнок строчек, что ж мне делать??? я не смогу следовать этому правилу даже если буду сидеть за этим кодом 48 часов в сутки!!!
Так что я пишу так как могу и так как работает <!--emo&;)-->Изображение<!--endemo--> - а это главное. <!--emo&:)-->Изображение<!--endemo--> <!--emo&:)-->Изображение<!--endemo-->
Спам придумали боги в отместку за наши молитвы.
Bio Wolf
Майор
 
Сообщений: 397
Зарегистрирован: Пн апр 08, 2002 9:23 pm
Откуда: KG
Пункты репутации: 0

Сообщение dAnIK SeNT » Чт фев 20, 2003 5:04 am

2Bio Wolf
У меня в последнем проекте 157 файлов и десятки тысяч строк. И не одной строчки PHP смешанной с HTML. И все работает <!--emo&:)-->Изображение<!--endemo-->

<span style='color:darkblue'><span style='font-size:16pt;line-height:100%'>Now Playing: The trick is to keep breathing - Garbage [Greatest hits-99]
I have had running my PC for 00:28:33
</span></span>
яНЯЕД ОН СОПЪФЙЕ: Athlon 64 X2 5200+ @2,86GHz / nF 570 SLI (ASUS M2N SLI Deluxe) / 4 Gb RAM (4x1Gb Kingston) / 2,9Tb SATAII (0,50+0,64+0,75+1,00Tb WD) / ASUS 8800 GTS512 / 2x NEC-Optiarc AD-7173 / Thermaltake ToughPower 650W / 2x30W Microlab Solo-2 / 20" LCD Benq FP202W (wide) / openSUSE 11.1 / KDE 4.2.1
<!--coloro:Navy--><span style="color:Navy"><!--/coloro-->оН БЯЕЛ БНОПНЯЮЛ - Б email. б ICQ ОНЪБКЪЧЯЭ ПЮГ Б ОНКЦНДЮ.<!--colorc--></span><!--/colorc-->
dAnIK SeNT
Маршал
 
Сообщений: 5101
Зарегистрирован: Чт мар 28, 2002 7:48 pm
Откуда: яяяп
Пункты репутации: 0

Сообщение dAnIK SeNT » Вс мар 02, 2003 2:51 pm

Сляпал небольшой примерчик.
<a href='http://dsent.pisem.net/filez/phpexample.rar' target='_blank'>http://dsent.pisem.net/filez/phpexample.rar</a>
Перед употреблением редактировать settings.php
яНЯЕД ОН СОПЪФЙЕ: Athlon 64 X2 5200+ @2,86GHz / nF 570 SLI (ASUS M2N SLI Deluxe) / 4 Gb RAM (4x1Gb Kingston) / 2,9Tb SATAII (0,50+0,64+0,75+1,00Tb WD) / ASUS 8800 GTS512 / 2x NEC-Optiarc AD-7173 / Thermaltake ToughPower 650W / 2x30W Microlab Solo-2 / 20" LCD Benq FP202W (wide) / openSUSE 11.1 / KDE 4.2.1
<!--coloro:Navy--><span style="color:Navy"><!--/coloro-->оН БЯЕЛ БНОПНЯЮЛ - Б email. б ICQ ОНЪБКЪЧЯЭ ПЮГ Б ОНКЦНДЮ.<!--colorc--></span><!--/colorc-->
dAnIK SeNT
Маршал
 
Сообщений: 5101
Зарегистрирован: Чт мар 28, 2002 7:48 pm
Откуда: яяяп
Пункты репутации: 0

Сообщение Wen » Пн мар 03, 2003 11:46 am

2dAnIK SeNT
что-то ссылка у меня не открывается.
Wen
Капитан
 
Сообщений: 170
Зарегистрирован: Пн окт 28, 2002 6:03 pm
Откуда: Германия
Пункты репутации: 0

Сообщение dAnIK SeNT » Пн мар 03, 2003 12:24 pm

2Wen
Только что проверил - все открывается прекрасно.
Могу мылом выслать.

15:26 MSK - ушло.
яНЯЕД ОН СОПЪФЙЕ: Athlon 64 X2 5200+ @2,86GHz / nF 570 SLI (ASUS M2N SLI Deluxe) / 4 Gb RAM (4x1Gb Kingston) / 2,9Tb SATAII (0,50+0,64+0,75+1,00Tb WD) / ASUS 8800 GTS512 / 2x NEC-Optiarc AD-7173 / Thermaltake ToughPower 650W / 2x30W Microlab Solo-2 / 20" LCD Benq FP202W (wide) / openSUSE 11.1 / KDE 4.2.1
<!--coloro:Navy--><span style="color:Navy"><!--/coloro-->оН БЯЕЛ БНОПНЯЮЛ - Б email. б ICQ ОНЪБКЪЧЯЭ ПЮГ Б ОНКЦНДЮ.<!--colorc--></span><!--/colorc-->
dAnIK SeNT
Маршал
 
Сообщений: 5101
Зарегистрирован: Чт мар 28, 2002 7:48 pm
Откуда: яяяп
Пункты репутации: 0


Вернуться в Программирование

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1