Get data trong controller angularjs từ mysql dùng php

Hi mấy bác, em đang tập tành dùng php để làm khóa luận tốt nghiệp cho project IoT.
về client em dùng angularjs, em dùng route https://www.w3schools.com/angular/angular_routing.asp để phân chia từng chức năng.
Trong chức năng history em xài controller HistoryController code như hình :slight_smile:
Làm sao để em get data từ mysql nhĩ, ai giúp em với

Em đã thử dùng chỗ cấu hình url em chẳng biết làm sao, em không biết gì về php hết, làm tới đâu mò tới đó nên mong ae giúp đỡ

hình các controller trong app angulars

nghĩa là sao nhỉ? Bạn get đc cái history.php rồi còn gì? Data từ file php bạn đã lấy đc rồi mà?

Hi, thì history.php có trả về JSON, nhưng url để truyền vào http get trong angularjs không đúng, chả biết truyền sao hết bạn ơi :’(

truyen đường dẫn tuyệt đối vào http.get xem
ví dụ dùng get:

var config = {
			headers:{
				'Accept': 'application/json',
				'requestType':'angularJS',
				'Cache-Control': 'no-cach, no-store, must-revalidate',
				'Pragame':'no-catch',
				'Expries': 0,
				action: '',
			},
			params:{}
		};

$http.get(url,config);

ref: https://github.com/nguyenhuuca/an-example/blob/master/ROOT/share/ajax.srv.js

Cái đó klq gì tới php hay controller cả.

Thuần túy là cách bạn truyền tham số vào $http thôi, bạn đọc lại rồi làm ví dụ là ok.
Như @nguyenhuuca đã gợi ý, truyền thẳng cái file history.php theo dạng đường dẫn vào, đg dẫn ở đây là đg dẫn dạng server nhé (localhost) không phải dạng thư mục C:\Windows đâu.

đúng rồi bác, mà em không biết truyền đường dẫn dạng server sao hết, hướng dẫn em với, em dân lập trình nhúng qua làm web để làm đồ án tốt nghiệp, :’(

em làm theo cách này nề mấy bác, nhưng server trả về 404

Mình tưởng bạn từ js nhảy sang php chứ từ nhúng sang thì hơi mung lung.

Viết xong thấy dài mà nó k khái quát đc vấn đề lắm nên bạn làm cái này trc
https://jsonplaceholder.typicode.com/

$http chính là giúp bạn truy cập vào 1 trang web. Trang ở trên nó đã có sẵn dạng json rồi, bạn có thể lấy tạm đường dẫn trên đó nhét vào $http để chạy thử.
$http phải nhận vào 1 file hay 1 link web. 1 file thì chỉ là đọc file json, xml thôi, còn trg hợp của bạn nó là cả 1 link web, file php ấy khi truy cập vào nó làm cả nhiệm vụ đọc từ database rồi trả về json cho bạn (giống hệt cái trang ở trên) nên nó là 1 trang web.
Cái bạn đang làm là truyền vào 1 file, về cơ bản là sai. Thế làm thế nào để có 1 trang web ngay trên máy? Thì bạn chịu khó học căn bản cho mình, đọc nốt phần dưới mình vừa viết.

Giờ bạn học giúp mình 1 khóa php căn bản, để còn hiểu thế nào là local, thế nào là server, GET, POST, JSON.
Chỉ có vài cái keyword đấy thôi, một khóa php học nhanh để mà nắm hết đống trên bạn mất 1 ngày. Xong học thêm mysql, dùng php kết nối vs mysql. Chậm thì mất 3 ngày. (cả ngày chỉ ăn vs học)

Giờ bạn không biết localhost là cái gì nên mình cũng k vứt luôn code cho bạn đc. Nhưng cái bạn làm thì chỉ cần tạo 1 cái “server” (cái này nó là server trên máy của bạn nên gọi là local-host) Nó là cái host, 1 host chứa nhiều website, cái bạn cần tạo là 1 website, có thể chỉ cần 1 file php.
File php này kết nối csdl - mysql, khi người dùng truy cập vào file/đường dẫn/website này thì nó trả về dữ liệu (giống kiểu truy cập vào link download thì nó trả file về cho down)

Thế xong ở bên js bạn dùng $http truy cập file/đường dẫn/website này là ok thôi.

hi bác, thanks đã giúp đỡ
Em đã get api về và debug trên js thì có dữ liệu về. Nhưng tại sao nó lạ hiện như thế này trên trang web của em. Thanks nhiều <3

Cái này phụ thuộc vào kỹ năng debug của bạn. Debug tốt thì cần biết luồng chạy (flow)
Bạn viết cái này thì đương nhiên bạn nắm đc luồng chạy rồi.

Chắc ý bạn là nó không ra đúng các cột? Luồng chạy bạn nắm đc rồi, chỗ nào in ra dữ liệu để hiện lên bảng bạn cũng nắm được rồi, đọc lại cái chỗ code ấy, cần thì in ra màn hình xem cái chỗ đó dữ liệu nó đã đúng chưa.
Js có console.log, thì php có echo, var_dump, exit, die Nếu cần có thể tìm hiểu về xdebug.

Bạn nên chú ý cách đặt câu hỏi. Chỉ mình bạn hiểu bạn muốn nó hiển thị thế nào thôi, Mình biết đâu ý bạn là gì. Đọc xong chỉ thấy hiện lên trong đầu câu k hiện thế này thì thế nào?

Hi mình debug thì ra kết quả như thế này, nhưng tại sao trong view ko ra đúng ta

trong view :slight_smile:

history = data.data…

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?