2011-02-03 8 views
2

FIXED; fancount.phpファイルに別のインクルードを追加したのです!<select>ドロップダウンリストの値をjavascriptを使用して別のファイルで機能させる方法

初期コード:

<div class="l-title"> 
<div class="t-left"></div> 
<div class="t-mid">Popularity Update</div> 
<div class="t-right"></div></div> 
<?php makechoice($cat_array); ?> 

機能コード:

function makechoice($cat_array) { 
     global $djnames; 
     global $djids; 
     global $djurl; 
     $dbz = new db(); 
     $sim = new simple(); 
     echo '<div class="choose-section">'; 
      echo '<select class="selbox" onchange="categoryAjaxData(\'facebook\',\'/includes/fancount.php\',this.value);">'; 
       foreach($cat_array as $cat) { 
        echo('<option value="'.$cat[0].'">'.$cat[1].'</option>'); 
       } 
      echo '</select>'; 
      echo 'Choose a section'; 
      echo '</div>'; 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($djnames, $djids, $djurl),'</div><div class="l-botcut"></div></div>'; 
     } 

コードfancount.php

<?php 
include_once("../_inc/global.php"); 
include_once("../_inc/dbmysql.php"); 
include_once("../_inc/simple.php"); 
    $dbz = new db(); 
    $sim = new simple(); 

    switch ($_GET['catid']) { 
     case 1: 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($barnames, $barids, $barurl),'</div><div class="l-botcut"></div></div>'; 
      break; 
     case 2: 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($beachrestaurantnames, $beachrestaurantids, $beachrestauranturl),'</div><div class="l-botcut"></div></div>'; 
      break; 
     case 3: 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($clubnames, $clubids, $cluburl),'</div><div class="l-botcut"></div></div>'; 
      break; 
     case 4: 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($clubnightnames, $clubnightids, $clubnighturl),'</div><div class="l-botcut"></div></div>'; 
      break; 
     case 5: 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($djnames, $djids, $djurl),'</div><div class="l-botcut"></div></div>'; 
      break; 
     case 6: 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($hotelnames, $hotelids, $hotelurl),'</div><div class="l-botcut"></div></div>'; 
      break; 
     case 7: 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($liveshownames, $liveshowids, $liveshowurl),'</div><div class="l-botcut"></div></div>'; 
      break; 
     case 8: 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($restaurantnames, $restaurantids, $restauranturl),'</div><div class="l-botcut"></div></div>'; 
      break; 
     case 9: 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($sunsetnames, $sunsetids, $sunseturl),'</div><div class="l-botcut"></div></div>'; 
      break; 
     case 10: 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($villanames, $villaids, $villaurl),'</div><div class="l-botcut"></div></div>'; 
      break; 
     default: 
      echo '<div id="facebook"><div class="facebook-midcut">',showfans($djnames, $djids, $djurl),'</div><div class="l-botcut"></div></div>'; 
    } 
?> 

Ajaxコードから:


function categoryAjaxData(div,str,value) 
{ 
    var url = str+'?catid='+value; 
    ajaxData(div,url); 
} 

function ajaxData(div,str) 
    { 
     xmlHttp=GetXmlHttpObject(); 
     document.getElementById(div).innerHTML='<center><img src="images/loader.gif"></center>';   
     if(xmlHttp==null) 
     { 
      alert("Browser does not support HTTP Request") 
      return 
     } 
      var url = str; 
      xmlHttp.onreadystatechange = function(){ DescriptionstateChanged(div); }; 
      xmlHttp.open("GET",url,true); 
      xmlHttp.send(null); 
    } 

function DescriptionstateChanged(div) 
{ 
    if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete") 
    { 
     document.getElementById(div).innerHTML=xmlHttp.responseText; 
    } 
} 

私は私の水の中で私がほとんどそこにいると感じます...誰も解決策を提供できますか... MarioVW、Mr Font of Knowledge - あなたは私の頭に啓発を与えることができますか?

+0

フォローアップのようですこのことから、私は、「ドロップダウン、JavaScript、PHPを使ってdivの内容を変更する」(http://stackoverflow.com/questions/4888910/changing-the-contents-of-a-div-using- a-dropdown-javascript-and-php)...私は新しい質問をするのではなく、同じ質問で続けるべきだと信じています... – MarioVW

+0

私は最後の質問からコードを削除したくありませんでした。この問題のコードは十分に異なっています。 –

+0

今後の参照のために両方の質問をクロスリンクしてください。また、問題が解決したら両方の質問に答えてください。 – MarioVW

答えて

0

私はこの質問には言われて、あなただけの変数を渡す必要があることChanging the contents of a div using a dropdown, javascript and PHP

のフォローアップであると仮定しています既に他の質問のcategoryAjaxData()を参照してください)あなたのAJAXリクエストのGETパラメータとして、switchステートメント(および他の設定コード)を使用して新しいPHPスクリプトを作成します。代わりに$_POST['fandropdown']を使用します$_GET['catid']

+0

私は改訂コードを投稿しました: –

+0

これを解決するには、 'DescriptionstateChanged()'( 'if'文の外側)に' alert(div) 'と' alert(xmlHttp.responseText) 'を追加してください。 – MarioVW

0

その中の専門家ではないながら、あなたは配列をしたいようですねAJAX

0

のための仕事のように聞こえます。

showfans($名[$ _ POST [ 'selectname' ...

+0

私はそれがそれほど単純ではないと思いますか?それとも、おそらくそれは?選択した選択ドロップダウンの値に応じて、関数に3つの異なる変数を渡したいと思います。他のアイデア? –

+0

ユーザーセッションの前に変数の(djnames、clubnames)値がわかっていますか。あなたの質問を編集して値がどのように割り当てられているかを表示できますか?あなたのPHPは、今日のように、DJのように1セットで動作しますか? –

関連する問題