|
|
|||||
PHP скрипт в HTML
Привет! Есть такая проблема:
В HTML страничку вставлен PHP-скрипт как SSI. Его задача выводить список ссылок на самого себя, т.е. выбор категорий с помощью GET. script.php?category=3 Но после вывода он должен вернуться на страницу которая его вызывала, т.е. index.html, что не происходит. А если вызывать из Javascript, то PHP не получает параметры, т.е. GET пустой. В общем нужно, чтобы PHP скрипт выполнялся, строил ссылки, но при нажатии на сылку не было перехода на другую страницу, а просто менялась картинка в соответствии с выбранной сылкой. Если все делать или на PHP или JS+HTML - работает, но PHP нужен для выборки изображений из базы. У меня связка HTML+PHP не работает. Вот код:
Переменная должна хранится на стороне пользователя, только не в куках! |
|
|||||
Регистрация: Jul 2008
Сообщений: 257
|
так на html+php и не будет (никак) работать в таком виде, чтобы страница заново вся не подгружалась.
надо такой связкой делать - html+js+php адрес будет script.php#category=3 с помощью jquery например хватаете эту переменную, и подгружаете php скрипт, который будет выдавать нужную картинку |
|
|||||
Неужели никак нельзя передать 1 единственное значение?
Через скрытое поле или еще как? В HTML ничего для этого не предусмотрено? Или обязательно нужен SUBMIT? Добавлено через 3 часа 50 минут Это test.html <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Demo</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head> <body> Hello world - PHP include next<BR> <!--#include virtual="test.php" -->//Никаких параметров не передается <BR> that was the PHP include output <BR>Now include php with a fixed parameter ...<BR> <!--#include virtual="test.php?a=1" -->//Передается параметр a=1 </script> </body> </html> и test.php <?php $a=htmlspecialchars($_REQUEST['a']); echo "value of parameter a=".$a; ?> Когда задаешь параметр в теле HTML, то все прекрасно. Параметры через SSI передаются нормально. Вот теперь как средствами HTML заменить строку <!--#include virtual="test.php?a=1" --> на <!--#include virtual="test.php?a=2" --> и т.д. Через JS не выходит. Apache не понимает внутри поля <script> ничего. Поэтому формирование строчки sURL = "test.php?a="+index; s = "<"+"!"+"--"+"#"+"include virtual="+sURL+" -->"; document.write(s); что в итоге дает правильную строку, но не дает включение PHP-файла. Добавлено через 3 часа 50 минут Sorry
|
|
|||||
Регистрация: Mar 2009
Сообщений: 317
|
или я че-то не понимаю, но почему в php файле нельзя юзать html?
например, так файл test.php в одном файле сразу |
|
|||||
Усе! сделал через JS<->PHP. Работает раза в 3-4 быстрее и ссылки не видно в строке.
2duhowka Много всего наверстано в дриме. Поэтому нужны только внешние PHP. А так я просто с SSI разбирался. Кстати передать параметры через SSI возможно. Только неудобно. |
|
|||||
Регистрация: Mar 2009
Сообщений: 317
|
зачем SSI я так и не понял.
имхо если есть php, то проще использовать require или include. Я использовал ssi, когда еще только был "perl", но у заказчика иной раз был хостинг без него приходилось делать все на html, а при использовании SSI - shtml и даже получалось сделать некую динамичность. =) параметры передать можно, но страница при этом перезагружается. |
|
|||||
>но страница при этом перезагружается
Вот отсюда и все проблемы =) Хочется динамики + без перегрузки страниц. В общем сочетание PHP и JS, на мой взгляд позволяет делать все, что душе угодно. А SSI мне попалось потому, что до нее я не знал как выделить область под действие PHP-скрипта. Т.е. выводить кучу верстки средствами PHP - нудно и долго, т.к. объем HTML-кода большой. Вот и химичил с SSI. Зато понял, что "клиент" мертв :-) Теперь я сделал так: JS делает запрос PHP-скрипту, PHP-скрипт передает массив данных в JS, а JS на основе данных обновляет нужные элементы. Вроде так нормально? |
|
|||||
Регистрация: Mar 2009
Сообщений: 317
|
Цитата:
js+php+mysql очень сильная связка. Мне кажется, что последнее время стал популярен и актуален Ajax (как считают некоторые благодаря гуглу), а если упростить, то по сути это "асинхронный" JavaScript и XML. используя его можно изменить "изображение" страницы, не перезагружая её. имхо стоит обратить на него внимание. |
Часовой пояс GMT +4, время: 10:53. |
|
« Предыдущая тема | Следующая тема » |
|
|