[請益] Ajax傳值到後端問題
各位大神好:
這兩天自己用Google Map API 弄一個地址查詢
在做連動式下拉選單時抓不到 Ajax 傳的值
不論用$request, $_GET 或 $_POST 裡頭都是空的
Ajax 用GET 或 POST 傳都一樣
而我自己在後端固定抓某筆資料庫的資料以 JSON 傳送
或是傳一筆假資料以 JSON 傳送又是成功能送回前端使選單連動
但就是改回由收到 Ajax 送的來資料再進資料庫找就會失敗
Ajax 那裡自己用 console.log('city') 確實是有東西的
已經困兩天了,找了好多網站和能問的人也是沒解
不曉得問題出在哪?有點開始懷疑是不是作業系統的編碼問題
----------------
以下是東西的Github
https://github.com/snowtim/damaiquiz_googlemap
Ajax 寫的部分在/resources/views/googlemap.blade.php 裡面
第105行開始
後端寫在/app/Http/Controllers/AddressController.php裡面
citylinkarea 那個 function
將 Ajax 引到 controller 的 route 寫在/routes/web.php
當中Route::post('/citylinkarea, ..........) 那行
作業系統:Ubuntu
後端
語言:PHP
資料庫:MySQL
框架:Laravel
謝謝~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.224.206.23 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1603294796.A.19A.html
→
10/21 23:54,
3年前
, 1F
10/21 23:54, 1F
→
10/22 00:01,
3年前
, 2F
10/22 00:01, 2F
忘記了~已補上
※ 編輯: firetim (61.224.206.23 臺灣), 10/22/2020 00:18:40
推
10/22 00:30,
3年前
, 3F
10/22 00:30, 3F
→
10/22 00:32,
3年前
, 4F
10/22 00:32, 4F
推
10/22 00:33,
3年前
, 5F
10/22 00:33, 5F
有哦~我有開
→
10/22 00:33,
3年前
, 6F
10/22 00:33, 6F
還是一樣,不管是GET或POST都同樣情形,就是當後端回傳值寫死能正常回傳
只要改回非寫死的話,除了POST我沒辦法用window.location進去看,會跑出
The GET method is not supported for this route. Supported methods: POST.
還有POST非寫死後端傳回來會出現
http://127.0.0.1:8000/citylinkarea 500 (Internal Server Error)詢息外
GET就是單純沒變化,然後同樣都會執行寫在Ajax的error情形詢息
※ 編輯: firetim (61.224.206.23 臺灣), 10/22/2020 01:25:33
→
10/22 01:35,
3年前
, 7F
10/22 01:35, 7F
→
10/22 01:35,
3年前
, 8F
10/22 01:35, 8F
中文的版本停在5,不過當時用過5.6和5.7自己的取法是可以的
然後現在Google Map這個是版本是8的,但下方另一個function還是可以取到
推
10/22 01:46,
3年前
, 9F
10/22 01:46, 9F
→
10/22 01:46,
3年前
, 10F
10/22 01:46, 10F
地圖是可以出現,用寫死的假資料也能標出地點
現在卡在查詢地點這裡辦法繼續下去
→
10/22 01:47,
3年前
, 11F
10/22 01:47, 11F
謝謝~還是相同情況QQ~一直卡在這裡
後面的雖然有先寫不過沒辦法跑完全部
根本不知道還會有什麼問題QQ~
※ 編輯: firetim (61.224.206.23 臺灣), 10/22/2020 02:03:05
※ 編輯: firetim (61.224.206.23 臺灣), 10/22/2020 02:05:12
※ 編輯: firetim (61.224.206.23 臺灣), 10/22/2020 02:05:42
→
10/22 02:26,
3年前
, 12F
10/22 02:26, 12F
→
10/22 02:26,
3年前
, 13F
10/22 02:26, 13F
也可以哦~自己試過兩種都取得到
只是我的問題還是一樣
在citylinkarea的function裡加了一段$request['city']沒值的回傳詢息
結果都會跑到這一段去
※ 編輯: firetim (61.224.206.23 臺灣), 10/22/2020 02:34:02
→
10/22 02:35,
3年前
, 14F
10/22 02:35, 14F
→
10/22 02:37,
3年前
, 15F
10/22 02:37, 15F
有~request的body都只有關於來源位址的資料
但就是沒Ajax送來的東西
換成看$_GET, $_POST裡頭也OA都是空的
→
10/22 02:37,
3年前
, 16F
10/22 02:37, 16F
→
10/22 02:37,
3年前
, 17F
10/22 02:37, 17F
→
10/22 02:37,
3年前
, 18F
10/22 02:37, 18F
您是指在data這裡打成data:console.log({City: city})這樣嗎?
我這樣打過console出來是有東西的
→
10/22 02:37,
3年前
, 19F
10/22 02:37, 19F
→
10/22 02:40,
3年前
, 20F
10/22 02:40, 20F
→
10/22 02:42,
3年前
, 21F
10/22 02:42, 21F
→
10/22 02:42,
3年前
, 22F
10/22 02:42, 22F
大小寫都有試過~不過還是一樣的情形
※ 編輯: firetim (61.224.206.23 臺灣), 10/22/2020 04:26:27
→
10/22 07:27,
3年前
, 23F
10/22 07:27, 23F
→
10/22 07:29,
3年前
, 24F
10/22 07:29, 24F
→
10/22 07:29,
3年前
, 25F
10/22 07:29, 25F
謝謝~不過還是一樣,然後我進去看dd($request->ajax()),是false
會不會是少引入了什麼?
※ 編輯: firetim (61.224.206.23 臺灣), 10/22/2020 08:05:53
※ 編輯: firetim (61.224.206.23 臺灣), 10/22/2020 08:09:32
推
10/22 08:12,
3年前
, 26F
10/22 08:12, 26F
謝謝您的提醒~一開始自己是寫一致的
後來一直試沒效才開始大小寫交叉寫想了解是不是有什麼地方是規定一定得大寫自己不知道
推
10/22 09:21,
3年前
, 27F
10/22 09:21, 27F
是指開發人員工具最下面那格嗎?自己知道能看的地方都有開, 不曉得這是不是您說的?
推
10/22 09:33,
3年前
, 28F
10/22 09:33, 28F
→
10/22 09:33,
3年前
, 29F
10/22 09:33, 29F
→
10/22 09:33,
3年前
, 30F
10/22 09:33, 30F
→
10/22 09:33,
3年前
, 31F
10/22 09:33, 31F
→
10/22 09:34,
3年前
, 32F
10/22 09:34, 32F
謝謝您~這裡的確是自己沒弄好,已經改了
→
10/22 12:05,
3年前
, 33F
10/22 12:05, 33F
→
10/22 12:06,
3年前
, 34F
10/22 12:06, 34F
→
10/22 12:07,
3年前
, 35F
10/22 12:07, 35F
原來是這樣~了解了
官方文件寫的$request->input('name')我當時也有這樣寫過,但狀況一樣
所以當下覺得應該是在東西傳到後端這部分有問題,不過一直當時找不出原因
validator因為這個東西有時間壓力所以想說至少要把功能做出來
等功能OK我再回來補一些接收資料處理的間題,謝謝
→
10/22 12:53,
3年前
, 36F
10/22 12:53, 36F
→
10/22 12:56,
3年前
, 37F
10/22 12:56, 37F
→
10/22 12:56,
3年前
, 38F
10/22 12:56, 38F
→
10/22 12:56,
3年前
, 39F
10/22 12:56, 39F
嗯~謝謝,最後有找到問題了~ssccg大的解答
推
10/22 13:09,
3年前
, 40F
10/22 13:09, 40F
→
10/22 13:10,
3年前
, 41F
10/22 13:10, 41F
→
10/22 13:11,
3年前
, 42F
10/22 13:11, 42F
→
10/22 13:12,
3年前
, 43F
10/22 13:12, 43F
→
10/22 13:14,
3年前
, 44F
10/22 13:14, 44F
→
10/22 13:14,
3年前
, 45F
10/22 13:14, 45F
推
10/22 13:33,
3年前
, 46F
10/22 13:33, 46F
→
10/22 13:34,
3年前
, 47F
10/22 13:34, 47F
解決了~配合您和ssccg大的解答已弄出來T T
謝謝您
→
10/22 14:45,
3年前
, 48F
10/22 14:45, 48F
→
10/22 14:48,
3年前
, 49F
10/22 14:48, 49F
→
10/22 14:49,
3年前
, 50F
10/22 14:49, 50F
→
10/22 14:56,
3年前
, 51F
10/22 14:56, 51F
→
10/22 14:57,
3年前
, 52F
10/22 14:57, 52F
→
10/22 14:58,
3年前
, 53F
10/22 14:58, 53F
→
10/22 14:58,
3年前
, 54F
10/22 14:58, 54F
→
10/22 14:59,
3年前
, 55F
10/22 14:59, 55F
→
10/22 15:00,
3年前
, 56F
10/22 15:00, 56F
→
10/22 15:27,
3年前
, 57F
10/22 15:27, 57F
→
10/22 15:34,
3年前
, 58F
10/22 15:34, 58F
感謝ssccg大~問題確實出在應該用contentType: 'application/json'
我最一開始版本是用dataType: "JSON",不過當時一樣沒有用
我放上去的是弄一段時間休息就傳上去的
目前連動已經可以了~謝謝~
感謝上面各位的幫忙!!也讓我多學到不少,為了這個弄了好多天QQ~
※ 編輯: firetim (36.235.51.151 臺灣), 10/23/2020 01:55:18
※ 編輯: firetim (36.235.51.151 臺灣), 10/23/2020 01:58:16