1

さて、ここで問題です。次のPHPコードがあります。

    <?php
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$result = mysqli_query($con,"SELECT * FROM Persons");

echo "<table border='1'>
<tr>
<th>Firstname</th>
<th>Lastname</th>
</tr>";

while($row = mysqli_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>" . $row['FirstName'] . "</td>";
  echo "<td>" . $row['LastName'] . "</td>";
  echo "</tr>";
  }
echo "</table>";

mysqli_close($con);
?>

私はW3Schoolsから降りて、データベースがオンになっているサーバー上で正常に動作します。しかし、私がやりたいのは、次の Javascript を使用して別のサイトに表示することです。

    function displaydata()
{
var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("datalist").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","phpscripthere.com/myphp.php",true);
xmlhttp.send();
}

上記の JavaScript は機能しますが、データベースが存在するサーバー上にある場合のみです。私が必要としているのは、PHP をメイン サーバーに保存したまま、Javascript を別の場所で動作させることです。

4

4 に答える 4

3

クロス ドメイン リクエストを作成する必要がありますhttps://stackoverflow.com/search?q=javascript+cross+domain (一部のAJAX クロス ドメイン呼び出し)

于 2013-04-03T07:42:19.893 に答える
1

このようなことを W3Schools から学んでいる場合、少し複雑に聞こえるかもしれませんが、がっかりしないでください :)

とにかく、@LoneWOLFs がコメントで述べたように、おそらく、JavaScript の送信元と同じサーバーに別の PHP ページをセットアップし、そのページを別のリモート サーバーで呼び出すこともできます。

基本的に、新しい PHP スクリプトは古いものと同様のことを行います - どこか離れた場所からデータを呼び出します。そして、そのデータを呼び出し元のブラウザに返します。

于 2013-04-03T07:48:38.637 に答える