Невозможно отобразить извлеченные данные из API в форму HTML

Я начал использовать AlchemyAPI ключ для извлечения данных JSON / XML из URL. Клавиша API allmy url api прекрасно работает, когда вводится вместе с запрашиваемым URL, но я хотел, чтобы часть URL приходила со стороны пользователя, поэтому сначала я создал форму со следующим кодом:

<form method="post" class="SearchCSS" action="/NENSearch.php?go" id="categorizer">
<h1>Enter your Queries</h1>
<input type="text" name="Search" placeholder="Enter the article URL">
<input type="submit" value="Search">
</form>

Затем с помощью PHP передал введенный пользователем URL-адрес в конечную точку API-интерфейса алхимии и сохранил данные json в переменной, а затем отобразил проанализированные данные, используя следующий код (проблема: код фактически ничего не отображает):

<?php
echo "this works here";
if(isset($_POST['submit'])){
if(isset($_GET['go'])){
if(preg_match("%^((http?://)|(www\.))([a-z0-9-].?)+(:[0-9]+)?(/.*)?$%i", $_POST['Search'])){
$url=$_POST['Search'];}

echo $url;}
$response = file_get_contents("http://gateway-a.watsonplatform.net/calls/url/URLGetCombinedData?extract=page-image,entity,keyword,taxonomy&apikey=1f324507a9d516d9429e14f970ccc83de9df2&showSourceText=1&sentiment=1&outputMode=json&quotations=1&url='.$url.'");
$response = json_decode($response);
echo $response;}
echo "<br/> this is not working";
?>

Основной URL-адрес alchemyAPI, который я использовал, выглядит следующим образом (url drupal добавлен в конце):
http://access.alchemyapi.com/calls/url/URLGetRankedTaxonomy?apikey=1f324507a9d51694a29e14f970ccc83de9df2&outputMode = JSONP&knowledgeGraph = 1&экстракт = таксономия&URL = https: //www.drupal.org/node/2148541

Я только начал работать с API, и любая помощь в отображении разобранных данных json в html-форму будет очень полезна. Заранее спасибо. 🙂

0

Решение

«(Проблема: код на самом деле ничего не отображает)»

Это потому, что все, что находится внутри этого условного оператора, не будет выполнено:

if(isset($_POST['submit'])){...}

Из-за того, что нет входных данных с атрибутом name «submit».

Что вам нужно сделать, это назвать входные данные вашего отправителя:

<input name="submit" type="submit" value="Search">

Если бы отчеты об ошибках были настроены на отслеживание и отображение в вашей системе, это привело бы к появлению неопределенного индекса для отправки уведомления.

Ссылка:

Также убедитесь, что $_GET['go'] правильно заполняет Отчеты об ошибках также сообщат вам, если это так или нет.

Примечание:

Воспользовавшись else{...} против вашего открытия if{...} условное заявление, загорелось бы.

Вы также должны проверить против $_POST['Search'] для контента, если он установлен или не пуст.

1

Другие решения

Других решений пока нет …