X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> ЧПУ + AJAX
exzibit
exzibit
Topic Starter сообщение 1.12.2010, 15:11; Ответить: exzibit
Сообщение #1


При использовании ЧПУ, AJAX работает не верно
т.е при ссылке .../client/exp - аjax ворачивает в результате дубликат всей страницы :wacko:,
Сам в ajax не разбираюсь, использовал готовый пример

htaccess
RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)$ /?main=$1&page=$2 [L,QSA]


index.php
if (($_GET[main]=="client") & ($_GET[page]=="exp"))
{
?>
<form name="myform" method=POST action="javascript:ajaxFunction();">
text: <input type="text" name="in" id="in" />
<input type=submit>
result: <input type="text" style="width:400px;" name="out" id="out" />
</form>
<?php }

ajax.js
var ajax=null;
// без изменений
function getAjax(){
if (window.ActiveXObject) // для IE
return new ActiveXObject("Microsoft.XMLHTTP");
else if (window.XMLHttpRequest)
return new XMLHttpRequest();
else {
alert("Browser does not support AJAX.");
return null;
}
}

function ajaxFunction(){
ajax=getAjax();
var param;
if (ajax != null) {
// метод POST, указываем просто имя файла
ajax.open("POST","result.php",true);

// если параметров несколько, то они разделяются &
param="in="+document.getElementById('in').value;

// добавляем стандартный заголовок http
// посылаемый через ajax
ajax.setRequestHeader("Content-type",
"application/x-www-form-urlencoded");

// вроде эти могут тормозить
ajax.setRequestHeader("Content-length", param.length);
ajax.setRequestHeader("Connection", "close");

ajax.onreadystatechange = function(){
if(ajax.readyState==4 && ajax.status==200)
document.getElementById('out').value=ajax.responseText;
}

ajax.send(param);
}
}


result.php
if (isset($_POST['in']))
echo strtoupper($_POST['in']);
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 1.12.2010, 15:19; Ответить: alexdrob
Сообщение #2


(exzibit @ 1.12.2010, 17:11) *
htaccess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/([^/]*)$ /?main=$1&page=$2 [L,QSA]

И путь
ajax.open("POST","result.php",true);

Пропишите полный
ajax.open("POST","http://ВАШ_САЙТ/result.php",true);
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
exzibit
exzibit
Topic Starter сообщение 2.12.2010, 20:59; Ответить: exzibit
Сообщение #3


можно еще вопрос? не создавая лишних тем...

AddDefaultCharset UTF-8
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([^/]*)$ /?main=$1 [L,QSA]
RewriteRule ^([^/]*)/([^/]*)$ /?main=$1&page=$2 [L,QSA]
RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ /?main=$1&page=$2&list=$3 [L,QSA]
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/([^/]*)$ /?main=$1&page=$2&list=$3&go=$4 [L,QSA]

RewriteCond %{REQUEST_URI} !-U
RewriteRule (.*) http://localhost/$1 [R]
необходимы ссылки вида

site.ru/first
site.ru/first/second
site.ru/first/second/third
site.ru/first/second/third/4

не могу разобраться... По отдельности - вроде работают, а вот вместе никак :nea:
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 2.12.2010, 23:49; Ответить: alexdrob
Сообщение #4


может потому что в это правило
(exzibit @ 2.12.2010, 22:59) *
RewriteRule ^([^/]*)$ /?main=$1[L,QSA]

входит любое идущее ниже?)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 3.12.2010, 1:19; Ответить: ZhukV
Сообщение #5


Я вот лично пользуюсь так:
.htaccess
RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?page=$1 [L,QSA]

После этого, в глобальном массиве $_GET будет переманная "page", в которой будет находится вся строка после домена.
А разбить его на куски просто:
[PHP]$CHPU = explode('/', $_GET['page']);[/PHP]

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыВеб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP)
56 qpPeW 44777 19.7.2023, 10:03
автор: qpPeW
Открытая тема (нет новых ответов) Ищу специалиста Wordpress/PHP/JS/AJAX
5 by_roXe 4290 4.11.2018, 17:09
автор: kikimora17
Открытая тема (нет новых ответов) Куплю сайт с трафиком тема метаоллообработка, металлоконструкции, станки ЧПУ и тп промышленность.
0 webcent 2473 1.4.2018, 9:21
автор: webcent
Открытая тема (нет новых ответов) Ищу специалиста по js, jquery, ajax, history api и т.д.
3 by_roXe 1533 15.3.2016, 14:17
автор: Edelweiss
Открытая тема (нет новых ответов) Требуются услуги программиста (jquery, ajax, php, html)
2 Упс 4096 11.4.2015, 14:25
автор: Упс


 



RSS Текстовая версия Сейчас: 29.3.2024, 18:47
Дизайн