こんにちはstackoverflow開発者、最初に、解決策が見つからなかったら申し訳ありませんが、しばらく試してみました。私のアプローチが最適かどうかはわかりません。AJAX や JSON に代わるものがあれば、遠慮なく提案してください。
登録ユーザーが地域や州に応じてリゾート、レストラン、観光スポットを掲載する観光ガイド Web サイトを作成しています。私はJoomlaを使用しています!これには Seblod (いくつかのカスタム PHP、MySQL、Javascript、および AJAX を使用)。手動で 27 の動的な選択を作成したくないので、PHP/AJAX/JSON/JQuery を使用して、登録されているビーチ (リゾートや観光スポットに関連する必要がある) のリストを選択しようとしています。
ビーチ リストの作成以外はすべて機能しますが、何が問題なのかわかりません。オプションを追加、作成、または追加する方法を複数試しましたが、何も起こりません。PHP/JSON の結果は次のとおりです。
`
[{"id":"17","title":"ポルト+デ+ガリーニャス"},{"id":"18","title":"セランビ"},{"id":"19", "タイトル":"タマンダー%E9"}]
`
これは、次の PHP スクリプトの結果です。
`
if($_GET['q'] == 'ビーチ'){
$praiaSQL = sprintf("SELECT * FROM vp_content AS c LEFT JOIN vp_cck_store_item_content AS v ON c.id = v.id WHERE c.catid = 10 AND v.cck = 'praia' AND v.venue_state = '%s' ORDER BY c.title ASC;", $_GET['s']);
$query = mysqli_query($connection, $praiaSQL);
$プライア = 配列();
while($results = mysqli_fetch_assoc($query)){
array_push($praia, array('id' => $results['id'], 'title' => urlencode($results['title'])));
}
echo json_encode($プライア);
}
`
アクセント付きの文字を処理するためのソリューションも必要です。ここで urlencode を試し、JQuery でデコードしようとしていますが、問題になる可能性があります。元のデータのままにすると、アクセント付きの文字がある場合、結果項目が空になりました。
これは、結果を処理する関連する JQuery です (ここで、x = 選択、u = AJAX JSON 結果を取得するための URL - コードのどこに問題があるかをコメントしました):
`
関数 setBeachList(x,u){
var theDiv = "#cck1r_" + x;
var theSelect = "#" + x;
$j(theSelect).children("option:not(:first)").remove();
$j.ajax({
url: う、
contentType: "application/json;charset=UTF-8",
成功: 関数(データ){
if(データ.長さ){
/****
確認する方法が見つからないため、ここで行き詰まっています。
データは実際に処理/処理されています。
アラートやその他のあらゆる種類のオプションを試して、
選択する。
before: および after: 関数があるため、呼び出されていることはわかっています
作業しています。
*****/
/*
$j.each(データ、関数(k、v){
var o = 新しいオプション();
var newTitle = urldecode(v.title);
$j(o).html(newTitle).val(v.id);
$j(theSelect).append(o);
});
*/
var htm = '';
for (var i = 0; i '+urldecode(data[i].title)+'';
}
$j(theSelect).html(htm);
}
}、
beforeSend: 関数(){
$j(theDiv).hide();
}、
完全:関数(){
$j(theDiv).show();
}、
データ型: 'json',
});
}
`
時間と忍耐をありがとう、私はこれの専門家ではありません (正確には初心者ではありませんが、近い...)。