小弟寫了兩支檔案,A.html,A.php。
A.html
$.ajax({
type: 'GET',
url: 'A.php',
data: '',
success:function(msg){
}
})
A.php有兩個function,getName、getAge
<?php
function getName(){
}
function getAge(){
}
請問,使用ajax呼叫後端A.php的getName方法,url該怎麼寫?
你跳拖有點大,還沒處理好請求的程式碼。就再問AJAX如何處理。
方向是不對的。
你先不要問如何AJAX啥URL的吧。
先看看你要如何在瀏覽器內下網址跑你要的東西。
也就是你的PHP中要怎麼寫才對。
基本這是很基礎的寫法。有人給你很簡單的參考範例了。
如果你還看不懂的話,我會建議你先從基本學起。
畢竟,這教起來沒完沒了。先就算寫給你了。你也搞不懂。
<?php
function getName(){
return '小明';
}
function getAge(){
return 18;
}
$userName = getName();
$userAge = getAge();
echo json_encode([$userName,$userAge]);
//會回傳給前端
簡單範例可參考
如果是我我會這樣寫
$.ajax({
type: 'GET',
url: 'A.php?getname=',
data: '',
success:function(msg){
}
})
<?php
if(isset($_GET["getname"])){
}
if(isset($_GET["getage"])){
}
常見的是指定動作去call, e.g. ?getNameAge=1
這也是比較不容易出錯的方式
function getName(){...}
function getAge(){...}
if( $_GET['getName'] ){ echo getName(); }
if( $_GET['getAge'] ){ echo getAge(); }
if( $_GET['getNameAge'] ){ echo [ getName(), getAge() ]; }
純Function list的話,可以直接用名稱call ?call_fnc={function_name}
function getName(){...}
function getAge(){...}
function getNameAge(){ return [ getAge(), getAge() ]; }
...
echo $_GET['call_fnc']();
// 要注意的東西比較多,初期不建議使用
如果是我我會這樣寫
$.ajax({
type: 'GET',
url: 'A.php?getname=',
data: '',
success:function(msg){
}
})
<?php
if(isset($_GET["getname"])){
}
if(isset($_GET["getage"])){
}
恩. ?getNameAge=1
格式完整是一個避免出bug的好習慣,也方便閱讀者理解此段已結束。其中1
還可延伸做檢碼、傳遞值等功用變化。畢竟對新手來說,基礎是很重要的。
以原Po的情況isset不是重點就沒多贅。當然要寫完整,還有很多可注意事項... 只是接下來是原Po的事,不急一時。