Я пытаюсь написать простое веб-приложение, которое вызывает API-интерфейс IBM Watson NLC для классификации текста, который пользователь вводит в текстовое поле.
Я создал следующее, и оно работает, если одно слово вводится и не удается, если дано предложение. В чем дело? любая помощь пожалуйста.
Язык ввода будет арабский.
<form action="post-method.php" method="POST">
<input type="text" name="texta" placeholder="Text to Query" multiple />
<input type="submit" name="submit" />
</form>
<?php
$wtext= ($_POST['texta']);
//echo $wtext;
$url = "https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers/{My Classifier ID}/classify?text=$wtext";
$headers = array('Content-Type:application/json');
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERPWD, '{My Classifier Username:My Classifier Password}');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
//curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post_args));
$result = curl_exec($ch);
if ($result === FALSE) {die('Send Error: ' . curl_error($ch)); }
curl_close($ch);
echo $result;
?>
Я отстой в кодировании, и большая часть этого небольшого фрагмента кода копируется из нескольких пользовательских сообщений в stackoverflow и других справочных форумах.
Любая помощь по заполнению этого пожалуйста.
Пожалуйста, попробуйте это:
$ch = curl_init($url);
<?php
$wtext= ($_POST['texta']);
echo "Passed text: ".$wtext;
$url = "https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers/{My Classifier ID}/classify?text=";
$url .= urlencode($wtext);
// $headers = array('Content-Type:application/json');
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_USERPWD, '{My Classifier Username:My Classifier Password}');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// curl_setopt($ch, CURLOPT_URL, $url);
// curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
//curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post_args));
$result = curl_exec ($ch);
// also get the error and response code
$errors = curl_error($ch);
$response = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
var_dump($result);
var_dump($errors);
var_dump($response);
?>
Других решений пока нет …