投稿者 |
メッセージ |
|
< PHPプログラミング ~ 翻訳サイトへの接続? |
|
時間:
火 8月 21, 2007 9:13 am
|
|
|
|
こんにちは
inputboxで日本語を入力して
<FORM ACTION="test.php" METHOD="POST">
<INPUT TYPE="text" NAME="word">
<INPUT TYPE="submit" VALUE="押す">
</FORM>
<?PHP
$word= $_POST['word'];
echo $word;
?>
下記の翻訳サイトに接続して英文を表示したいのですがわかりません
http://www.excite.co.jp/world/english?before='word'
なかなか他サイトの接続して情報を得る解説ないので質問しました。
よろしくおねがいします |
|
|
|
|
|
|
|
時間:
水 8月 22, 2007 6:52 pm
|
|
|
|
グーグル翻訳の場合下記のスクリみつけました
が何をしてるのかわかりません
これで試すと文字化けします
fsockopenが実行可能な設定になっているかもわかりません
<?php
/*
ご自分で用意されたサーバに設置してください。
PHPが実行可能である必要があります。
また、fsockopenが実行可能な設定に鳴っている必要があります。
*/
//変換処理先
//http://www.google.co.jp/language_tools?hl=ja
$word = urlencode($_GET['word']);
$requrl = "translate.google.com";
$reqmethod = "get";
$reqpath = "translate_t";
//言語変換の設定パラメータ
//hlとlangpairを変更する事で他の言語への変換が可能
$reqdata = "text=" . $word ."&hl=ja&langpair=ja|en";
//リクエストの送信と受信
$fp = fsockopen($requrl, 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)\n";
} else {
$out = $reqmethod." /".$reqpath."?".$reqdata." HTTP/1.1\r\n";
$out .= "Host: ".$reqhost."\r\n";
$out .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ja-jp; rv:1.8.1) Gecko/20061010 Firefox/2.0\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
while (!feof($fp)) {
$res .= fgets($fp, 128);
}
fclose($fp);
}
//レスポンスから変換後の文字列のみを抽出
$mystring = $res;
$findme = '<div id=result_box dir=ltr>';
$pos = strpos($mystring, $findme);
if ($pos === false) {
echo "transelation error";
} else {
$step1 = substr($mystring,$pos + 27);
}
$mystring = $step1;
$findme = '</div>';
$pos = strpos($mystring, $findme);
if ($pos === false) {
echo "transelation error";
} else {
$step2 = substr($mystring,0,$pos);
}
//翻訳後の文字列を出力
echo $step2;
?> |
|
|
|
|
|
|
|
時間:
金 8月 24, 2007 6:34 pm
|
|
|
|
|
|
|
|
|
時間:
金 8月 24, 2007 7:39 pm
|
|
|
登録日: 2007年8月 08日
投稿記事: 5
所在地: 愛知県名古屋市
|
|
|
|
|
|
|
|
新規投稿: 不可 返信: 不可t 自分の記事の編集: 不可 自分の記事の削除: 不可 投票への参加: 不可
|
|