Вызов php-функции из javascript

12
CE
На сайте с 30.01.2008
Offline
73
#11

по-моему автору сюда

Kolyaj
На сайте с 28.03.2006
Offline
69
#12

Miracle, читайте внимательней

aBcolut:
Javascript должен периодически его вызывать и получать эту строку.
Turtle_Fly
На сайте с 20.09.2007
Offline
33
#13
aBcolut:
Есть некий html-файл, в нем javascript, обычный типа:
.............
Нужно из него вызвать php-функцию. Как это сделать?

Я делал типа так:

<script type="text/javascript" >

var today=new Date();
var h=today.getHours();
var m=today.getMinutes();
var s=today.getSeconds();
var i=0;
<?php
echo 'var x=1;';
echo 'Hello WOrd';
get_array($prod);
generate_banner($prod);
Блаблабла
?>
...
</script>

т.е. получалось что php тупо генерил некий js код

Естественно что в вызываемый php код нельзя передать значения Js переменных.

Если надо передавать переменные туда-сюда то-> ajax

лазерные станки для резки и гравировки, купить в Москве (http://laser911.ru/). изготовление табличек для офиса (http://www.shtampuem.ru/tablichki/).
M
На сайте с 20.08.2004
Offline
376
#14
Kolyaj:
Miracle, читайте внимательней

все зависит от задачи, я считаю что то что хотел сделать ТС можно сделать как я и написал, пусть добавить Н строк переменных в жаваскрипт, все же проще чем тягать из базы... а задача, как мне кажется, все же сводилась именно к этому...

Miracle добавил 18.09.2008 в 14:00

например сделать 60 строк переменных (не так уж и много) и каждую минуту генерить , я дмаю больше часа просто так на станичке никто не останется, а если ее часто перегружают то однозначно решение которое предложил я и не стоит усложнять жизнь....

:)

Kolyaj:
Miracle, читайте внимательней
правильно заданный вопрос половина решения, в данном случае, как мне кажется вопрос задан немного не верно, но я исхожу из своей не маленькой практики разработки сайтов )
отец сыночка, лапочки дочки и еще одного сыночка
DyaDya
На сайте с 11.04.2007
Offline
147
#15
Miracle:
я исхожу из своей не маленькой практики разработки сайтов )

Одно дело изходить из своей практики, а другое дело помочь человеку сделать, что-то гениальное, выходящее за рамки практики других ). Пусть повозится с AJAX, зато получит отличный полезный опыт.

ТС, AJAX вам в помощь. Можете установить время переодичности вызова функции. Функция будет посредством AJAX получать данный от работы PHP скрипта с вашего сервера и выводить результат туда, куда вам захочется на странице в браузере пользователя.

Мне, например, нравится вот эта реализация XAJAX

---

Разумеется, это одно из эффективных решений, если нужно постоянно получать изменяемые в реальном времени данные с сервера. Это может быть чат или что-то подобное. Когда за время просмотра страницы, пользователю нужно показать что-то новое, чего раньше на сервере еще не было доступно и заранее запихнуть в переменные javascript было нельзя.

Выбирайте качественный хостинг (http://vashmaster.ru/informaciya/o_poleznyh_programmah/news83.php) и продвигайте сайты в СЕОПУЛЬТ (http://seopult.ru/ref.php?ref=72b5ed9561fe66a1). А на «SAPE» я в обиде :) Не упрекайте за очепятки, пишу вслепую (http://ergosolo.ru/) и также делаю сайты (http://www.vashmaster.ru/) ;)
A
На сайте с 18.09.2008
Offline
5
#16

Всем спасибо, особенно Kolyaj и DyaDya

Получилось то что хотел

<script type="text/javascript" >

function load_data()
{
var obj = document.getElementById('txt');
var req;

if (window.XMLHttpRequest) req = new XMLHttpRequest();
else if(window.ActiveXObject)
{
try {
req = new ActiveXObject('Msxml2.XMLHTTP');
} catch (e){}
try {
req = new ActiveXObject('Microsoft.XMLHTTP');
} catch (e){}
}

if (req)
{
req.onreadystatechange = function()
{
if (req.readyState == 4 && req.status == 200)
{ obj.innerHTML = req.responseText; }
};
req.open("POST", 'func.php', true);
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
req.send(null);
}
else alert("Браузер не поддерживает AJAX");
}

setInterval(load_data, 10000);
</script>

Вроде бы аякс, но не подключаем никаких лишних библиотек.

international calling cards (http://www.worldwide-calls.com) Нужны ссылки
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий