PHPのプログラムで質問です。
yahooのAPIで知恵袋サンプルプログラムで知恵袋質問でもサイトをコピーしてきたんですが、エラーが出てきて実行できません。
どのように変更すれば実行できますか?
これで解答いただいてアプリケーションIDを入れて実行したらエラーが出たためもう一度質問です。
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in /opt/lampp/htdocs/www/sample3.php on line 28
エラーはこのようなエラーです。
よろしくお願いします。
<?php
/**
* Yahoo! JAPAN Web APIのご利用には、アプリケーションIDの登録が必要です。
* あなたが登録したアプリケーションIDを $appid に設定してお使いください。
* アプリケーションIDの登録URLは、こちらです↓
* http://e.developer.yahoo.co.jp/webservices/regis …
*/
$appid = ''; // <-- ここにあなたのアプリケーションIDを設定してください。
$CHIE_SEARCH_API_HOST = 'chiebukuro.yahooapis.jp';
$CHIE_SEARCH_API_URL = '/Chiebukuro/V1/questionSearch';
$CHIE_SEARCH_API_APPID = $appid;
function escapestring($str) {
return htmlspecialchars($str, ENT_QUOTES);
}
print<<<EOM
<html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="utf-8">
<title>知恵袋デモサイト - 質問検索(php)</title>
</head>
<body>
<h1>知恵袋デモサイト - 質問検索(php)</h1>
EOM;
print '<form action="./'. basename($_SERVER['SCRIPT_NAME']) .'">';
print '<input type="text" name="query" value="' . escapestring($_GET
['query']) . '">';
print '<input type="submit" value="search">';
print '</form>';
if("" !== $_GET['query']){
$responseXML = '';
{
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "http://
${CHIE_SEARCH_API_HOST}${CHIE_SEARCH_API_URL}?appid=
${CHIE_SEARCH_API_APPID}&query=".urlencode($_GET['query']));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$responseXML = curl_exec($curl);
curl_close($curl);
}
{
$xmlObj = simplexml_load_string($responseXML);
foreach($xmlObj->{'Result'}->{'Question'} as $que) {
print("<li>{$que->{'Content'}}<br><a href=\"{$que->{'Url'}}\">{$que->
{'Url'}}</a>\n");
}
}
}
print<<<EOM
<hr />
<!-- Begin Yahoo! JAPAN Web Services Attribution Snippet -->
<a href="http://developer.yahoo.co.jp/about">
<img src="http://i.yimg.jp/images/yjdn/yjdn_attbtn2_105_17 … width="105"
height="17" title="Webサービス by Yahoo! JAPAN" alt="Webサービス by Yahoo!
JAPAN" border="0" style="margin:15px 15px 15px 15px"></a>
<!-- End Yahoo! JAPAN Web Services Attribution Snippet -->
</body>
</html>
EOM;
?>