2017-02-24 33 views
1

私は、私が場所を見るために国のセレクターとして使用しているドロップダウンメニューを持っています。ページの場所に基づいてフォームを送信する

現在ドロップダウンが機能していますが、ドロップダウンから選択する前に現在の国のユーザーをロードして、自分の国の場所のリストを自動的に表示するようにします。

現在、私はユーザー国を取得するドロップダウンを持っていますが、「選択された」値のみを表示しているフォームを送信していません。ここで

は、SQLなどの私のコードです:

<?php 

require_once(DIR_WS_CLASSES . 'geoplugin.class.php'); 
$geoplugin = new geoPlugin(); 
$geoplugin->locate(); 

echo $geoplugin->countryCode; 

echo $geoplugin->countryName; 

?> 
<div style="padding:80px 0 20px 20px;border-bottom:1px solid #a6a6a6; "> 
<h1 style="color:#000"><?php echo LOCATION_TITLE ;?></h1> 
</div> 

<div style="padding:20px 0px 0px 1%;"> 
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post" > 

    <select name="selectboxvalue" onchange="this.form.submit();" id="selectboxvalue" > 

     <option>SELECT A COUNTRY</option> 
     <option value="<?php $geoplugin->countryCode; ?>" <?php if ($geoplugin->countryCode == 'US' || $_POST["selectboxvalue"]=="US") echo "selected=\"selected\""; ?>>USA</option> 
     <option value="canada" <?php if ($geoplugin->countryCode == 'CA'|| $_POST["selectboxvalue"]=="canada") echo "selected=\"selected\""; ?>>Canada</option> 
     <option value="international" <?php if ($_POST["selectboxvalue"]=="international") echo "selected"; ?>> International</option> 
    </select> 

</form> 
</div> 
<?php 




$location_query_raw = "select l.storetitle,l.storeimage, l.country, l.state, l.city, l.postal, l.address, l.phone, l.storelink, l.latitude,l.longitude, l.sortorder, l.status from locations l"; 


switch ($_POST['selectboxvalue']) { 
    case "US": 
     $location_query_raw .= " where l.country like \"%USA%\" ORDER BY l.state "; 
     break; 
    case "canada": 
     $location_query_raw .= " where l.country like \"%CA%\" ORDER BY l.state"; 
     break; 
    case "international": 
     $location_query_raw .= " where l.country not like \"%USA%\" and l.country not like \"%CA%\" ORDER BY l.state"; 
     break; 
    default: 
     $location_query_raw .= " order by l.state"; 
     break; 
} 

$location_query= tep_db_query($location_query_raw); 
+0

Javascriptコンソールにエラーがありますか? – Barmar

答えて

1

私はあなたが値をエコーされていません...問題を発見した。.. :-)

<option value="<?php $geoplugin->countryCode; ?>" 

ちょうどエコーを追加し、今すぐ価値が投稿されます! :

<option value="<?php echo $geoplugin->countryCode; ?>" 
関連する問題