Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/26: Рейтинг темы: голосов - 26, средняя оценка - 4.58
0 / 0 / 0
Регистрация: 14.06.2012
Сообщений: 13

Не работает скрипт ajax

11.11.2012, 14:34. Показов 5551. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть скрипт

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<script type="text/javascript" language="javascript">
/*переменная для хранения объекта запроса*/
var xmlHttp=null;
/*создание объекта запроса*/
function createRequest()
{
  try{
    //создаем объект запроса для Firefox, Opera, Safari
    xmlHttp = new XMLHttpRequest();
  } catch(e){
    //создаем объект запроса для Internet Explorer
    try{
      xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e){
      try{
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(e){
        xmlHttp = null;
      }
    }
  }
 
  if(xmlHttp == null)alert("Браузер не поддерживает AJAX!");
}
 
/*отправка запроса*/
function sendRequest()
{
/*получаем объект запроса*/
  createRequest();
  /*Устанавливаем соединение*/
  xmlHttp.open("GET", "ajax.php?param1=1¶param2=2", true);
  /*Указываем функцию*/
  xmlHttp.onreadystatechange = MyFunc;
  /*Отправляем запрос*/
  xmlHttp.send(null);
}
 
/*обрабатываем ответ*/
function MyFunc()
{
  if(xmlHttp.readyState == 4) {
    if (xmlHttp.status == 200) {
      alert(xmlHttp.responseText);
    } else {
      alert("Ошибка обработки запроса!");
    }
  }
}
</script>
<input value="сделать запрос" type="button" onClick="sendRequest();" />
<?PHP
/*Получаем параметры*/
$param1 = $_GET['param1'];
$param2 = $_GET['param2'];
/*Отсылаем ответ клиенту*/
echo("Вы прислали $param1 и $param2");
?>
Не понимаю почему не работает, появляется окно с надписью подтвердите действие на localhost, и в этом окне код этого скрипта. А нужно чтобы выводилось значение param1 и param2. Что делать? Можете дать мне код обычного скрипта на ajax, который будет работать как этот (просто выводить значения, после нажатия на кнопку)?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.11.2012, 14:34
Ответы с готовыми решениями:

Скрипт php+ajax не работает в IE
Здравствуйте! Скрипт содержит три выпадающих списка, заполняются они из файлов. Выбор первого - заполняется второй Выбор второго -...

Как обойти, Ajax не работает и выполнить php скрипт
Здравствуйте, есть ссылка по нажатию отрабатывает Ajax и выводит Hello World! Как при отключенном JavaScript, по нажатию на ту же ссылку,...

Баг в Google Chrome при ajax-запросе, Скрипт работает во всех браузерах кроме Google Chrome
данный скрипт срабатывает везде (опера, ИЕ, ФФ, Сафари), кроме Google Chrome: // запись в кэш всех фоток var proimg = ; var ximg...

12
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
11.11.2012, 14:38
incrack, вы видимо делаете запрос к файлу с этим же скриптом. Вынесите код php в отдельный файл и делайте запрос к нему.
1
0 / 0 / 0
Регистрация: 14.06.2012
Сообщений: 13
11.11.2012, 14:54  [ТС]
Спасибо!

Добавлено через 9 минут
Всё равно появляется окно, теперь с содержимым другой страницы. Как сделать чтобы просто на странице появлялось значение param 1 и param 2?
0
31 / 31 / 2
Регистрация: 06.08.2012
Сообщений: 155
11.11.2012, 15:06
JavaScript
1
2
3
4
5
function sendRequest(){
$.get('ajax.php', { param1: '1', param2: '2' }, function(data){
$('#result').html(data);
});
}
HTML5
1
2
<input value="сделать запрос" type="button" onClick="sendRequest(); return false;" />
<div id='result'></div>
PHP
1
2
3
4
$param1 = $_GET['param1'];
$param2 = $_GET['param2'];
/*Отсылаем ответ клиенту*/
echo("Вы прислали $param1 и $param2");
1
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
11.11.2012, 15:09
Цитата Сообщение от incrack Посмотреть сообщение
Как сделать чтобы просто на странице появлялось значение param 1 и param 2?
Вы венысли php код в отдельный файл? Нужно чтобы ничего, кроме php кода там не было.
1
0 / 0 / 0
Регистрация: 14.06.2012
Сообщений: 13
11.11.2012, 15:27  [ТС]
spyeye, Что то не работает. Код js и html в файле cl4.php, а код php в файле ajax.php.

Lyodik, Да, файл ajax.php и всё что в нем есть
PHP
1
2
3
4
5
<?php
$param1 = $_GET['param1'];
$param2 = $_GET['param2'];
echo ("Вы прислали $param1 и $param2");
?>
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
11.11.2012, 15:34
incrack, очень странно. Если в файле ничего, кроме php-кода, то должно выводиться только то, что выдаёт php-код. А вы где тестируете? Если на бесплатном хостинге, то, возможно там автоматом подставляется реклама и вы видите не то что хотите.
1
0 / 0 / 0
Регистрация: 14.06.2012
Сообщений: 13
11.11.2012, 15:48  [ТС]
Тестирую на локальном хосте xamp. Возможно я не правильно называю файлы?
Файл cl2.php содержит это:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<script type="text/javascript" language="javascript">
/*переменная для хранения объекта запроса*/
var xmlHttp=null;
/*создание объекта запроса*/
function createRequest()
{
  try{
    //создаем объект запроса для Firefox, Opera, Safari
    xmlHttp = new XMLHttpRequest();
  } catch(e){
    //создаем объект запроса для Internet Explorer
    try{
      xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e){
      try{
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(e){
        xmlHttp = null;
      }
    }
  }
 
  if(xmlHttp == null)alert("Браузер не поддерживает AJAX!");
}
 
/*отправка запроса*/
function sendRequest()
{
/*получаем объект запроса*/
  createRequest();
  /*Устанавливаем соединение*/
  xmlHttp.open("GET", "ajax.php?param1=1¶param2=2", true);
  /*Указываем функцию*/
  xmlHttp.onreadystatechange = MyFunc;
  /*Отправляем запрос*/
  xmlHttp.send(null);
}
 
/*обрабатываем ответ*/
function MyFunc()
{
  if(xmlHttp.readyState == 4) {
    if (xmlHttp.status == 200) {
      alert(xmlHttp.responseText);
    } else {
      alert("Ошибка обработки запроса!");
    }
  }
}
</script>
<input value="сделать запрос" type="button" onClick="sendRequest();" />
Файл ajax.php содержит это:
PHP
1
2
3
4
5
<?php
$param1 = $_GET['param1'];
$param2 = $_GET['param2'];
echo ("Вы прислали $param1 и $param2");
?>
0
--\.founder./--
 Аватар для WebMax 2.0
565 / 565 / 392
Регистрация: 20.10.2011
Сообщений: 867
11.11.2012, 16:01
incrack, Что это за символ такой "¶" в GET запросе, там должно быть "&".

ajax.php
PHP
1
2
3
4
5
6
<?php
header('Content-type: text/html; charset=utf-8');
$param1 = $_GET['param1'];
$param2 = $_GET['param2'];
echo ("Вы прислали $param1 и $param2");
?>
cl2.php
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
header('Content-type: text/html; charset=utf-8');
?>
<!doctype html>
<html>
<head>
</head>
<body>
<script type="text/javascript" language="javascript">
/*переменная для хранения объекта запроса*/
var xmlHttp=null;
/*создание объекта запроса*/
function createRequest()
{
  try{
    //создаем объект запроса для Firefox, Opera, Safari
    xmlHttp = new XMLHttpRequest();
  } catch(e){
    //создаем объект запроса для Internet Explorer
    try{
      xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e){
      try{
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(e){
        xmlHttp = null;
      }
    }
  }
 
  if(xmlHttp == null)alert("Браузер не поддерживает AJAX!");
}
 
/*отправка запроса*/
function sendRequest()
{
/*получаем объект запроса*/
  createRequest();
  /*Устанавливаем соединение*/
  xmlHttp.open("GET", "ajax.php?param1=1&param2=2", true);
  /*Указываем функцию*/
  xmlHttp.onreadystatechange = MyFunc;
  /*Отправляем запрос*/
  xmlHttp.send(null);
}
 
/*обрабатываем ответ*/
function MyFunc()
{
  if(xmlHttp.readyState == 4) {
    if (xmlHttp.status == 200) {
      alert(xmlHttp.responseText);
    } else {
      alert("Ошибка обработки запроса!");
    }
  }
}
</script>
<input value="сделать запрос" type="button" onClick="sendRequest();" />
 
</body>
</html>
1
0 / 0 / 0
Регистрация: 14.06.2012
Сообщений: 13
11.11.2012, 16:17  [ТС]
Заработало) Но как сделать в моем скрипте чтобы эти параметры выводились не в новом окне, а под кнопкой сделать запрос?
0
--\.founder./--
 Аватар для WebMax 2.0
565 / 565 / 392
Регистрация: 20.10.2011
Сообщений: 867
11.11.2012, 16:24
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
header('Content-type: text/html; charset=utf-8');
?>
<!doctype html>
<html>
<head>
</head>
<body>
<script type="text/javascript" language="javascript">
/*переменная для хранения объекта запроса*/
var xmlHttp=null;
/*создание объекта запроса*/
function createRequest()
{
  try{
    //создаем объект запроса для Firefox, Opera, Safari
    xmlHttp = new XMLHttpRequest();
  } catch(e){
    //создаем объект запроса для Internet Explorer
    try{
      xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e){
      try{
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(e){
        xmlHttp = null;
      }
    }
  }
 
  if(xmlHttp == null)alert("Браузер не поддерживает AJAX!");
}
 
/*отправка запроса*/
function sendRequest()
{
/*получаем объект запроса*/
  createRequest();
  /*Устанавливаем соединение*/
  xmlHttp.open("GET", "ajax.php?param1=1&param2=2", true);
  /*Указываем функцию*/
  xmlHttp.onreadystatechange = MyFunc;
  /*Отправляем запрос*/
  xmlHttp.send(null);
}
 
/*обрабатываем ответ*/
function MyFunc()
{
  if(xmlHttp.readyState == 4) {
    if (xmlHttp.status == 200) {
      document.getElementById('inner').innerHTML = xmlHttp.responseText;      
    } else {
      document.getElementById('inner').innerHTML = "Ошибка обработки запроса!";
    }
  }
}
</script>
<input value="сделать запрос" type="button" onClick="sendRequest();" />
<div id='inner'></div>
</body>
</html>
1
0 / 0 / 0
Регистрация: 14.06.2012
Сообщений: 13
12.11.2012, 15:14  [ТС]
Всем спасибо

Добавлено через 22 часа 46 минут
И последний вопрос) Как вывести эти значения не в div, а в переменную php?
0
31 / 31 / 2
Регистрация: 06.08.2012
Сообщений: 155
12.11.2012, 17:09
Чтобы мой код работал, нужно подключить библиотеку jQuery.

Добавлено через 47 секунд
Цитата Сообщение от incrack Посмотреть сообщение
Всем спасибо

Добавлено через 22 часа 46 минут
И последний вопрос) Как вывести эти значения не в div, а в переменную php?
PHP
1
$var = $param1;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.11.2012, 17:09
Помогаю со студенческими работами здесь

PHP скрипт -> Json -> выбор пользователя -> AJAX -> первоначальный PHP скрипт
Доброго времени суток! Я новичек вэб программировании, так что прошу строго не судить(в гугле ответа не нашел). Есть задача: ...

Не работает скрипт Ajax
Привет всем. В определенных целях мне понадобился аякс, и я начал его изучать. Сделал простейший пример на Денвере: index.html ...

Скрипт на ajax
Здравствуйте форумчане, очень большая просьба помочь, попросили написать скрипт на ajax, но им почти не владею, а задачка такая: На...

php скрипт + ajax
К примеру использую ajax для влияния на рейтинг новости, дело в том, что если быстро нажать несколько раз скажем на плюс, то данные...

Зависает скрипт с ajax
Здравствуйте, помогите пожалуйста, написал программу отправляющую post и получающую этот же файл, вот код: &lt;meta...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru