私のフォームでは、2つのフィールドで何かをしたいと思います。
「website_domain」と「website_ip_address」
jQuery / JSONを使用してPHPスクリプトを呼び出し、website_domainを渡して、そのWebサイトのIPアドレスを含むJSONを受信しようとしています。
問題/症状説明:
部分的に機能しています。ぼかしの場合、PHPスクリプトのURLを取得します。ファイアバグでそれだけ見ることができます。私は200OKを取得します。PHPスクリプトからの出力は、JSONLintによると有効なJSONです。
{"field": "website_ip_address"、 "value": "74.125.225.70"}
しかし、Firebugには、JSONタブがありません。[パラメータ]タブと[ヘッダー]タブしかありません。[応答]タブすらありません。
言うまでもなく、website_ip_addressフィールドにも、PHPスクリプトのJSON出力から取得する必要のあるデータが入力されていません。
私のPHPスクリプト:
今のところ、このPHPスクリプトは私のアプリケーションとは異なるドメインにあることに注意することが重要かもしれません。たぶん私の全体の問題はクロスドメインですか?
<?php
$domain = $_GET["domain_name"];
$ip = gethostbyname($domain);
// echo $ip;
$json = array(
'field' => 'website_ip_address',
'value' => $ip,
);
header('Content-Type: text/plain');
echo json_encode($json );
?>
私のjQuery/JSONスクリプト:
これはRubyOnRailsアプリケーションビュー内に記述されていることに注意してください。
:javascript
$("#website_domain").bind("blur", function(e){
$.getJSON("http://exampledomain.com/temp_getIP.php?domain_name=" +$("#website_domain").val(),
function(data){
$('#website_ip_address').val(data);
});
});
これが私の側の単なる構文エラーではないことを本当に望んでいます。StackOverflowで見つけた回答に基づいて、これを2日間作成/書き直しましたが、役に立ちませんでした。ここで何かが足りません。