0

私はJavascriptを初めて使用し、以下のコードを作成しましたが、問題なく動作しますが、mysqlデータベースからphpとjavascriptを使用して画像を動的にプルしたいのですが、次のコードをリファクタリングするにはどうすればよいですか。よろしくお願いします。

var myimage = document.getelementById("mainImage");
var imageArray =["images/overlook.jpg","images/garden.jpg","images/park.jpg"];

var imageIndex =0;

function changeimage(){
      myimage.setAttribute("src",imageArray[imageIndex]);
      imageIndex++;
      if(imageIndex >= imageArray.length){
      imageIndex = 0;
}

setInterval(changeimage, 5000);
4

2 に答える 2

1

いくつかのオプションの1つ。

  1. 画像のURLを使用して列のデータベースをクエリします。

    $query = mysql_query("SELECT url FROM images");
    
  2. 次に、このようなものから配列を取得します。

    $images = array();
    while($row = mysql_fetch_array($query)){
        $images[] = $row['url'];
    }
    
  3. 次に、次の文字列を生成します(提供されているJavascriptで使用します)。

    var imageArray = ["images/overlook.jpg","images/garden.jpg","images/park.
    

    データベースから取得した配列を使用します。json_encodeエラーが発生しやすい文字列の作成をいじりたくない場合は、PHPでこれを使用できます。

    $imagesAsJsonArray = json_encode($images);  
    
  4. エコーします。終わり。

最もエレガントなソリューションではありません。しかし、それはあなたに遊ぶ何かを与えます。オンラインでいくつかのPHPチュートリアルをチェックしてください。そうすれば、すぐにコツをつかむことができます。

于 2012-07-30T00:13:30.380 に答える
0

2つの選択肢:

  1. ページの作成時にPHPを使用して、画像の配列をページに配置し、ページレベルのJavaScriptを使用してそれらの間を循環します。
  2. ページでAjaxを使用し、ページからサーバーを呼び出して次の画像を取得し、クライアント側のJavaScriptを使用して、返された画像をページに表示します。
于 2012-07-30T00:02:28.177 に答える