現在、いくつかの機能をJoomlaビルドに組み込んでいますが、結果は選択ボックスの変更時にデータベースから返されます。私が抱えている問題は、Ajax
呼び出しが行われClass JFactory
たときにphpコードが実行されているファイルがJoomlaフレームワーク内にあるとは見なされないため、見つからないというエラーが表示されることAJAX
です。私はこれを自分で解決しようとしましたが、問題が発生しています。どこが間違っているのか、誰かが私を正しい方向に向けることができますか?
呼び出し( Ajax
index.php 内):
<script type="text/javascript">
var url = "<?php echo $this->baseurl; ?>/templates/<?php echo $this->template; ?>/directory_code.php";
jQuery(document).ready(function() {
jQuery('#city').change(function() {
jQuery.ajax({
url: url,
type: "POST",
data: jQuery("#city").serialize(),
dataType: 'json',
success: function(data) {
alert('data');
}
});
});
});
</script>
関数 (directory_code.php というファイル内):
if(isset($_POST)) {
if(isset($_POST['city'])) {
$city = $_POST['city'];
$suburbs = populateSuburbs($city);
}
}
function populateSuburbs($city) {
$db = JFactory::getDBO();
$query = "SELECT DISTINCT suburb FROM vyj20_contact_details";
$db->setQuery($query);
$results = $db->loadObjectList();
foreach($results as $key => $result) {
$data['suburb'][] = array(
$key => $result->suburb
);
}
}
どうもありがとう