dir.by  
  Поиск  
Программирование, разработка, тестирование
PHP (язык программирования для быстрого написания Web сайта)
Создаем html файл и javascript отправляет post запрос в php server. PHP server делает ответ | Почему на php сервере $_REQUEST или $_POST массив пуст
  Посмотрели 770 раз(а)    
 Создаем html файл и javascript отправляет post запрос в php server. PHP server делает ответ | Почему на php сервере $_REQUEST или $_POST массив пуст 
последнее обновление: 12 февраля 2025
Шаг 1. Создаем html файл и внутри javascript
  Html  
<script>
     var url = "https://dir.by/developer/myapi/login.php";

     var params = "login=evgen&password=12345";

     xmlHttpReq = new XMLHttpRequest();
     xmlHttpReq.open('POST', url, true);
     xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
     xmlHttpReq.onreadystatechange = function()
     {
          if (xmlHttpReq.readyState == 4 && xmlHttpReq.status == 200) // success
          {
               alert(xmlHttpReq.responseText);
          }
     }
     xmlHttpReq.send(params);
</script>
Шаг 2. Сервер получает post запрос. Сервер создает ответ вот в файле login.php
<?php

header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST, OPTIONS, PUT, DELETE');
header('Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-With');

header('Content-Type: application/json');

$response = array();
$response['success'] = false;

if ($_REQUEST['login']=='evgen' && $_REQUEST['password']=='12345')
{
     $response['success'] = true;
     $response['token'] = "123123dasa213ws212";
}

echo json_encode($response);

?>
На заметку! Если на php сервере массив $_REQUEST или $_POST пуст при отправке через javascript
Решение: Когда JavasScript отправляет запрос, то должен использовать Content-Type вот такой application/x-www-form-urlencoded
  Html  
<script>
     var url = "https://dir.by/developer/myapi/login.php";

     var params = "login=evgen&password=12345";

     xmlHttpReq = new XMLHttpRequest();
     xmlHttpReq.open('POST', url, true);
     xmlHttpReq.setRequestHeader('Content-Type', 'application/json' 'application/x-www-form-urlencoded');
     xmlHttpReq.onreadystatechange = function()
     {
          if (xmlHttpReq.readyState == 4 && xmlHttpReq.status == 200) // success
          {
               alert(xmlHttpReq.responseText);
          }
     }
     xmlHttpReq.send(params);
</script>
 
← Предыдущая тема
Регулярные выражения
 
Следующая тема →
Zend Framework (PHP framework)
 
Ваши Отзывы ... комментарии ...
   
Вашe имя
Ваш комментарий (www ссылки может добавлять только залогиненный пользователь)

  Объявления  
  Объявления  
 
PHP изучение
Что такое PHP ?
Функция
Функция в PHP. Пример: function CalculateSum($value1, $value2) { ... }
Передача параметров по значению и по ссылке в функцию в PHP
Передаем функцию как параметр в функцию | PHP
Безымянная функция
Анонимная функция (без имени). Указатель на функцию в PHP
Передаем безымянную функцию как параметр в функцию | используя use (...) безымянная фунция видит выше переменную | PHP
Массивы
Массив в PHP (создаем массив, добавление элементов, длина массива, проходим через все элементы в массиве)
Ищем элемент в массиве в PHP | array_search
Массивы (ключ-значение)
Массив (ключ-значение) в PHP (создаем массив, добавление элементов, длина массива, проходим через все элементы в массиве)
Регулярные выражения
Регулярные выражения
PHP сервер
Создаем html файл и javascript отправляет post запрос в php server. PHP server делает ответ | Почему на php сервере $_REQUEST или $_POST массив пуст
Фрэймворки (frameworks)
Zend Framework (PHP framework)
Yii (PHP framework)
CakePHP (framework)

  Ваши вопросы присылайте по почте: info@dir.by  
Яндекс.Метрика