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

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.10.2014, 22:10   #1
sinestro
Пользователь
 
Регистрация: 24.02.2012
Сообщений: 88
По умолчанию не работает ajax + php

всем бобра. в универе задали реализовать отправку выделенного текста на странице с помощью ajax на сервер, где это всё будет обрабатываться с помощью пхп и будет отправляться обратно на страницу. поставил я значит у себя денвер, пихнул своё детище в папку home, а оно не работает. попробовал скачать чужой пример, он почему-то тоже не сработал.
мой код:

файл index.html
Код HTML:
<html>
<head>
	<title>отправка выделенного текста на сервер</title>
	<link rel="stylesheet" href="mystyles.css">
	<script type="text/javascript" src = "myscript.js" ></script>   
</head>
<body bgcolor = "#FCF162">
	<div> 
		<input type="radio" name="switch" value="on" checked="checked">Включить
   		<input type="radio" name="switch" value="off">Выключить
	</div>
	<div id="divst"> 
		<p><h2>Пример с текстовым полем:</h2></p> 
		<center><input name="textbox" type="text" onselect="SendReq('textbox', getSelection()) "></center>
	</div>
	<div id="divst"> 
		<p><h2>Пример с обычным текстом: </h2></p> 
		<p>sdkjfng lskdfn hglskdn -glks ;jdnfgljs  nfdgljsnd  ^fgljk nssdfjngslkdfh *nglsdkjngf 435 345 = 5435</p>
	</div>
	<div id="divst" name="answer">
		<p><h2>Результат: </h2></p>  
	</div>
</body>
</html>
файл myscript.js

Код:
var req = Create();  
function Create()
{  
	if(navigator.appName == "Microsoft Internet Explorer")
	{  
		req = new ActiveXObject("Microsoft.XMLHTTP");  
    	}
	else
	{  
        		req = new XMLHttpRequest();  
    	}  
    	return req;  
}
//////////////////////////////////////////////////////////////////////////////////////
function Request(query) 
{   
	req.open('post', 'capture.php' , true ); 
	req.onreadystatechange = Refresh; 
	req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8"); 
	req.send(query);       
}  
//////////////////////////////////////////////////////////////////////////////////////////
function SendReq(n, t) 
{  
	if(getElementByName('switch').value=="on")
	{ 
		var name = encodeURIComponent(n); 
		var txt = encodeURIComponent(t); 
		var query = 'name='+name+'&txt='+txt; 
		Request(query) ;
	}
}
/////////////////////////////////////////////////////////////////////////////////////
function Refresh() 
{ 
	var a = req.readyState;    
	if( a == 4 ) 
	{  
		var b = req.responseText; 
		document.getElementByName('answer').innerHTML ='<p><h2>Результат: </h2></p>'+ b;  
	} 
	else 
	{ 
		document.getElementByName('answer').innerHTML = '<p><h2>Результат: </h2></p><img src="loading.gif" />'; 
	} 
}
файл capture.php
PHP код:
<?php 
$txt 
= (isset($_POST['name']) && isset($_POST['txt']))? ('в элементе ' $_POST['name'] . 'выделен текст: ' $_POST['txt'] ) : NULL
sleep(4);  
echo 
$txt
?>
в добавок прикрепляю архив с этим и чужим примером. пока код написан только для выделения в текстовом поле.в коде могут быть ошибки, поэтому смело закидывайте какашками, если что
Вложения
Тип файла: rar мой.rar (259.4 Кб, 8 просмотров)
Тип файла: rar чужой_пример.rar (77.5 Кб, 8 просмотров)

Последний раз редактировалось sinestro; 12.10.2014 в 22:12.
sinestro вне форума Ответить с цитированием
Старый 12.10.2014, 22:23   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,156
По умолчанию

а че велосипеды то строить? JQuery используй и кода гораздо меньше....
ADSoft на форуме Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jQuery AJAX не работает таймаут hon JavaScript, Ajax 1 02.02.2014 13:45
Не работает ajax livesport JavaScript, Ajax 2 04.04.2012 07:59
AJAX не работает в IE dronsapun JavaScript, Ajax 5 22.08.2010 18:41