Ru-Board.club
← Вернуться в раздел «Web-программирование»

» PHP: библиотека xAJAX

Автор: LisaSim
Дата сообщения: 17.07.2008 05:38
Все работает... да имеется ввиду PHP код
Автор: Cheery
Дата сообщения: 17.07.2008 05:42
LisaSim

Цитата:
Все работает... да имеется ввиду PHP код

значит не работает, логично же?
если ajax вместо данных, выдаваемых php скриптом, выдает его код, то ессно этот php код не выполняется и в этом и есть проблема. а уж почему не выполняется - другой вопрос.
Автор: LisaSim
Дата сообщения: 17.07.2008 09:21
после того как я в <head> индекса прописываю
<?php $objAjax->printJavascript();?>
появляется ошибка
Fatal error: Call to a member function on a non-object in...
Автор: 6epcepk
Дата сообщения: 17.07.2008 18:10
в коде перед этим надо создать экземпляр класса $objAjax.
Автор: aworld
Дата сообщения: 29.08.2008 14:59
Здравствуйте. Вобщем вчера начал изучение xAjax. Нифига не фдупляю, но написал следующий код

Код:
function sel($select)
{    
    $conn=db_connect();
    $objResponse = new xajaxResponse();
    $query = "select * from prepod where spec='$select'";
    $result = mysql_query($query);
    $myOutput="<select>";
    while($data = mysql_fetch_array($result))
{
$myOutput .= "<option>".$data[3]." ".$data[4][0].".".$data[5][0]."."."</option>";
}
    $myOutput .="</select><br>";
    $query = "select * from gr where discip='$select'";
    $result = mysql_query($query);
    $myOutput.="<select>";
    while($data = mysql_fetch_array($result))
{
$myOutput .= "<option>".$data[0]."</option>";
}
    $myOutput .="</select><br>";
$objResponse->assign("div","innerHTML",$myOutput);
return $objResponse;
}
function vvod($select,$aud)
{
// вот что тут хз =)
}
$conn=db_connect();
    $result=mysql_query("select * from discip");
    $kol=mysql_num_rows($result); ?>
    <select name="select" id="select" onChange='xajax_sel(xajax.$("select").value);'>
<?    for($i=0;$i<$kol;$i++)
    {
        $ar=mysql_fetch_array($result);
        echo "<option value=".$ar[0].">".$ar[1]."</option>";
    }
    echo "</select>";
    echo "<br>";
    $result=mysql_query("select * from aud");
    $kol=mysql_num_rows($result);
?>
    <select name="aud" id="aud">"
<?
    for($i=0;$i<$kol;$i++)
    {
        $ar=mysql_fetch_array($result);
        echo "<option value=".$ar[1].">".$ar[0]."</option>";
    }
    echo "</select>";
    echo "<br>";
?>
<div id="div"></div>
</div>
<button name="button" value="enter" onClick='xajax_vvod(xajax.$("select").value,xajax.$("aud").value);'>Внести в расписание</button>
Автор: 6epcepk
Дата сообщения: 29.08.2008 16:44
<button onClick="xajax_makeRequest(xajax.getFormValues());" />

ps: "опа, безпалева" - на развлекательный портал с таким.
Автор: aworld
Дата сообщения: 29.08.2008 17:28
спс. ок буду серьезнее =)

Автор: aworld
Дата сообщения: 30.08.2008 16:53

Код:
function sel($select)
{
....
$objResponse->assign("form2","innerHTML",$myOutput);    
}
function vvod($dta1,$dta2)
{
.....
$objResponse->assign("rasp","innerHTML",$myOutput);
}
<form id="rasp">
</form>
<form id="form1">
<select name="select" id="select" onChange='xajax_sel(xajax.$("select").value);'>
...
</select>
</form>
<form id="form2">
</form>
<input type="submit" value="Внести в расписание" onclick="xajax_vvod(xajax.getFormValues('form1'),xajax.getFormValues('form2'));">
Автор: Ctulhu
Дата сообщения: 16.09.2008 10:56
Люди добрые, помогите если можете. Пользую xAjax 0.5 все классно, но есть один момент. Однажды вместе с HTML кодом нужного div потребовалось вывести JavaScript код с описанием функции (JavaScript конечно же). Однако браузер ее в упор не видит. Получается что JS функции работают только те, которые были определены при первоначальной загрузке страницы. Те же что пришли в ответе асинхронном просто не видятся. Кто сталкивался? Подскажите как бороться?
Автор: kosola
Дата сообщения: 16.09.2008 14:06
Ctulhu
Сталкивался, не победил... Добавлял заранее все нужные функции JS
Автор: 6epcepk
Дата сообщения: 16.09.2008 15:47
Ctulhu
Там есть функция для выполнения JS-кода, можно и файл проинклудить.
Автор: SRangeR
Дата сообщения: 05.12.2008 11:31
подключил редактор tiny_mce

<script language="javascript" type="text/javascript" src="/tiny_mce/tiny_mce.js"></script>

вызваю его на странице http://ava/admin/index.php?page=articles

вместо вспрывающих окон пустота...
Может кто сталкивался с этим... Что нужно изменить в относительных путях в редакторе чтобы он заработал...
Автор: Cheery
Дата сообщения: 05.12.2008 18:16
SRangeR

Цитата:
подключил редактор tiny_mce

подключили куда, как??
Автор: SRangeR
Дата сообщения: 06.02.2009 15:00
кто нить сталкивался?
пытаюсь заменить текст на странице
$objResponse->assign("und_".$id, "innerHTML", "<a onclick=\"xajax_cls_news.shortnews(".$id.");\">Свернуть</a>");
если использовать просто текст то работает
если ссылку то
ERROR: xajax.dom.assign: Error: Unknown runtime errorEval: element.<a onclick="xajax_cls_news.shortnews(52);">Свернуть</a> = data;
проблема в IE // опера проглатывает ошипку и все работает
Автор: Cheery
Дата сообщения: 06.02.2009 22:10
SRangeR
вставка в какой элемент идет?
Автор: SRangeR
Дата сообщения: 06.02.2009 22:14
<a id=und_".$id></a>
думаю это просто EI не может менять... в ссылках инфу
Автор: Cheery
Дата сообщения: 06.02.2009 22:19
SRangeR

Цитата:
думаю это просто EI не может менять... в ссылках инфу

он не может в tr менять innerHTML, к примеру.
а зачем два a?
попробуйте другой элемент.
Автор: SRangeR
Дата сообщения: 07.02.2009 11:48
да не хотелось вводить другой элемент.
решил проблему запихнув ссылку в DIV
Автор: AlexsWulf
Дата сообщения: 16.02.2009 15:39
есть вот такая функция
Код:

function clickTable($id)
    {
        $response = new xajaxResponse();
        $response->assign('text', 'innerHTML', 'Тестируем='.$id);
        return $response;
    }

Все отлично работает.
Но как только я пытаюсь обратиться к базе то перестает
Код:

function clickTable($id)
    {

        //Получаем список таблиц в таблице данных системы
        $this->mysql->sql_query="Select table_name From ".PERFIX_CMS."tables Where id=".$id;
        $this->mysql->sql_execute();
        //if($this->mysql->sql_err)
        //{
        //    $ret_urn=array(11,$this->mysql->sql_query);
        //    return($ret_urn);
        //}

        $response = new xajaxResponse();
        $response->assign('text', 'innerHTML', 'Тестируем='.$id);
        return $response;
    }

Вот так уже на работает.
В чем может быть проблема?
Автор: Cheery
Дата сообщения: 16.02.2009 19:37
AlexsWulf

Цитата:
Но как только я пытаюсь обратиться к базе то перестает

может, все же, ошибка в запросе возникает?

Цитата:
Select table_name From

ну.. скажем так, выбираются столбцы из таблицы, а не таблица
Автор: 6epcepk
Дата сообщения: 16.02.2009 20:10
AlexsWulf
FireFox + FireBug и смотрим Response, который возвращает сервер.
Автор: AlexsWulf
Дата сообщения: 16.02.2009 20:13
Да нет. Запрос выполняется правильно. И подключение к базе есть.
не работает даже такой вид
function foo($id = 0){
        return $id*5;
    }
    function clickTable($id)
    {
        $response = new xajaxResponse();
        $html=foo($id);
        $response->alert("$html");
        $response->assign('text', 'innerHTML', 'Тестируем='.$html);
        return $response;
    }

а опять же вот так будет работать

function foo($id = 0){
        return $id*5;
    }
    function clickTable($id)
    {
        $response = new xajaxResponse();
    //    $html=foo($id);
    //    $response->alert("$html");
        $response->assign('text', 'innerHTML', 'Тестируем='.$html);
        return $response;
    }
Автор: Cheery
Дата сообщения: 16.02.2009 20:18
AlexsWulf

Цитата:
а опять же вот так будет работать

а что оно так будет выводить?

Цитата:
// $html=foo($id);
// $response->alert("$html");

коммент на вызове функции или же на alert?
Автор: AlexsWulf
Дата сообщения: 16.02.2009 20:28
На вызове функции.
Поставил FireBug
Сейчас посмотрю что покажет.
Автор: AlexsWulf
Дата сообщения: 18.02.2009 22:52
С той проблемой разобрался. Он не видел ссылки на объект.
Подскажите как сделать upload.
В смысле пока скрипт обрабатывается на сервере выдать пользователю красивую картинку что идет загрузка.
Есть какая то стандартная функция? Или нужно что то изобретать?
Заранее благодарю.
Автор: Cheery
Дата сообщения: 18.02.2009 22:57
AlexsWulf
http://xajaxproject.org/developer/q_no/swfupload/swfupload.php
http://en.pastebin.ca/913832
Автор: 6epcepk
Дата сообщения: 18.02.2009 23:21
Может это имелось ввиду?

http://www.phpro.org/examples/PHP-Xajax-Loading-Message.html
Автор: AlexsWulf
Дата сообщения: 19.02.2009 10:09
Да я имел в виду именно это

Цитата:
http://www.phpro.org/examples/PHP-Xajax-Loading-Message.html


А вот по этой ссылке вопрос такой

Цитата:
http://en.pastebin.ca/913832


Что мне дает
$xajax->configure("UploadProgressType","LIGHTTPD");
Что такое LIGHTTPD?

И откуда можно скачать сам плагин?
require_once './xajax/xajax_plugins/request/upload/upload.inc.php';
Автор: AlexsWulf
Дата сообщения: 02.03.2009 12:48
Доброго времени суток.
У меня с ново созрел вопрос.

Есть такой код:
function myFunc($test)
    {
        $response = new xajaxResponse();
        $response->Assign("ttt","options.length=0","");
        $response->Assign("ttt","options.add(new Option('Тест','1'))","");
        $response->Assign("ttt","options.add(new Option('Привет','2'))","");
        $response->Assign("ttt","disabled","");
        return $response;
    }
После выполнения видем что в селекте получается два "Тест" и два "Привет"

И дебагер выводит следующие ошибки:
ERROR: xajax.dom.assign: SyntaxError: invalid assignment left-hand side
Eval: element.options.add(new Option('Привет','2')) = data;
ERROR: xajax.dom.assign: SyntaxError: invalid assignment left-hand side
Eval: element.options.add(new Option('Тест','1')) = data;

Подскажите что сделано не так?
Заранее благодарю за ответ.
Автор: Cheery
Дата сообщения: 02.03.2009 20:09
AlexsWulf

Цитата:
$response->Assign("ttt","options.add(new Option('Тест','1'))","");
$response->Assign("ttt","options.add(new Option('Привет','2'))","");

а где вы такой вызов видели?
если он правильный (в чем сомневаюсь), то попробуйте заменить русский текст на англ.

Страницы: 12345678910

Предыдущая тема: AJAX


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.