2011-03-10 12 views
1

私はWeb開発の初心者ですから、この問題に苦労しています。私はゲームからどのプレイヤーからも統計情報を取得できるウェブサイトを作ろうとしています。私はプレーして、それはテキストボックスにプレーヤーの名前を入力することで動作し、次に 'ok'をクリックすると、ゲームサーバーのWebサイトのapiでxmlを取得し、ローカルサーバーを使用して結果を出力するPHP関数を呼び出すjs関数を呼び出します(apache)すべてがスムーズに実行されますが、エラーは発生しませんが、ホストにファイルをアップロードするときに変数が渡されず、なぜ私のウェブサイトwww.statsofnewerth.sevencut.com.brにURLがあるのか​​分かりません/playerStats.php、「Alcartur」のボックスに自分のユーザー名を入力すると、統計情報が返されますが、空白のままです。ニック変数と返された値が表示されます。PHP:値がURLに渡されない

playerStats.php

<div class="search-panel"> 
<label>Search for player:</label> 
<input name="playerName" id="txt_playerName" type="text" value="" size="20" maxlength="20" /> 
<input name="btnPlayerSearch" type="button" value="Ok" onclick="requestPlayerData()" /> 
</div> 

form.js

function requestPlayerData(){ 
    var img = new Image(); 
    img.src = "src/wait.gif"; 
    document.getElementById('wait-panel').innerHTML = ""; 
    document.getElementById('wait-panel').appendChild(img); 
    var nickname = document.getElementById('txt_playerName').value; 
    ajaxFunction(nickname); 
    } 

    function ajaxFunction(nickname){ 
    $('#wait-panel').load("httpRequest.php?nickname="+nickname, function(html){ 
    alert(html); 
}); 
} 

とhttpRequest.php

<?php 
header('Content-type: application/xml'); 
$q = $_GET['nickname']; 
echo 'nickname'.$q; 
$sxe = simplexml_load_file('http://xml.heroesofnewerth.com/xml_requester.php?f=player_stats&opt=nick&nick[]='.$q); 
$result = $sxe->xpath("//*[@name='rnk_amm_team_rating']"); 
print_r($result); 
?> 

はちょうど私のローカルサーバーにそれが動作することを思い出します。

英語の間違いがありましたら、私の母国語ではありません。前もって感謝します。

+0

アラートが空白になるか、まったく表示されません。あなたのローカルサーバーをまだ指しているベースタグセットがありますか?今日私はajaxコールでこの問題を抱えていました! –

+0

これは空白になります。ハードコードされた文字列のみで、ベースタグはありません。 –

答えて

1

は全くロードされていますか?

$sxe = simplexml_load_file('http://xml.heroesofnewerth.com/xml_requester.php?f=player_stats&opt=nick&nick[]='.$q); 
var_dump($sxe);die(); 
+0

はい、変数ニックネームが空白なので、要求はエラーとともに返されます。無効な文字がある場合、このエラーが返されます。 "}" –

1

httpRequestページが正しいデータを返すことを確認してください。私はそうは思わない。

<?php 
header('Content-type: application/xml'); 
$q = $_GET['nickname']; 
echo 'nickname'.$q; 
$sxe = simplexml_load_file('http://xml.heroesofnewerth.com/xml_requester.php?f=player_stats&opt=nick&nick[]='.$q); 
$result = $sxe->xpath("//*[@name='rnk_amm_team_rating']"); 
//print_r($result); // I don't think this can work? could be wrong 

echo $result[0]; // this returns the first xpath match and outputs the value of the node, which is the "rnk_amm_team_rating" thing 

// since this php says it returns XML (the header line), it should either do so or get rid of the header. 
?> 
+0

print_r($ result); "object(SimpleXMLElement)#1(1){[" error "] => string(39)"アカウントのフォーマットに問題が発生しました。私は、これは私のlocalhostサーバーで完璧に実行されている、それはリモートサーバー(hostgator)で動作していないだけで、リモートで正しいデータを返すわけではないので、読み取り可能な方法で配列全体を出力します'ニックネーム'。$ q;それが空白であることを示しているので、http://xml.heroesofnewerth.com/xml_requester.php?f=player_stats&opt=nick&nick[]='.$q URLは不完全です。 –

0

私は私は私はそれが私のコンピュータでは、いくつかのキャッシュから古いファイルを使用していたサイトをacessedとき(それも意味をなさないんだと思うリモートサーバー上のファイルを入れていたにもかかわらず、解決策を見つけた男?)、それともホストと何か問題があった、私は本当に知っていないが、今私はwesite上でリフレッシュし、正常に動作していた。ありがとう問題が解決しました。

関連する問題