2015-06-29 3 views
6

мне нужно отправить данные в URL, я делал это раньше метод GET и использование url_encode()CodeIgniter отправки POST данные в конкретный URL - данные API

Теперь, когда мне нужно POST с фреймворк CodeIgniter, я не очень хорошо знают, что использовать

Любая помощь будет оценена

+0

Да Абдулла это – Sanjeev

ответ

7

Ok, отправляя ответ избежать промежуток времени для поиска решения в будущем

Цель: Передача данных POST для конкретного URL, т.е. к API

Framework:Codeigniter

Решение:

Допустим, необходимые данные для передачи в массив с именем, электронной почтой, паролем

$passData = array(
      "name" => $_name, 
      "email" => $_email, 
      "password" => $_pass 
     ); 
$url = '192.168.100.51/AndroidApi/v2/register'; 

echo '<br><hr><h2>'.$this->postCURL($url, $params).'</h2><br><hr><br>'; 

Функция для отправки данных через POST на URL: да, мы будем использовать cURL здесь

public function postCURL($_url, $_param){ 

     $postData = ''; 
     //create name value pairs seperated by & 
     foreach($_param as $k => $v) 
     { 
      $postData .= $k . '='.$v.'&'; 
     } 
     rtrim($postData, '&'); 


     $ch = curl_init(); 
     curl_setopt($ch, CURLOPT_URL,$_url); 
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
     curl_setopt($ch, CURLOPT_HEADER, false); 
     curl_setopt($ch, CURLOPT_POST, count($postData)); 
     curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);  

     $output=curl_exec($ch); 

     curl_close($ch); 

     return $output; 
    } 

Чтобы проверить, является ли или доступен не Curl использовать

echo (is_callable('curl_init')) ? '<h1>Enabled</h1>' : '<h1>Not enabled</h1>' ; 

Спасибо, и это очень хорошо работает с выходом как

Отказ:

{ "ошибка": правда, "сообщение": "E-mail адрес не является действительным"}

ИЛИ Success:

{ "ошибка": ложь, "сообщение": "Вы успешно зарегистрированы" }