Hiển thị kết quả từ 1 đến 7 / 7
  1. #1
    Tham gia
    24-12-2014
    Bài viết
    6
    Like
    4
    Thanked 0 Times in 0 Posts

    Giao tiếp giữa C và PHP

    Mình đang làm đề tài mà cần code giao tiếp giữa C và PHP, nhưng mình lên mạng search hầu hết ko thấy dạng nào giống vậy
    Mình tính dùng socket nhưng socket chỉ dùng đc P2P, còn mồ hình của mình là server - client, và php là server còn C là client mà trên mạng toàn hướng dẫn C làm server còn php làm client
    Mọi người có hướng nào khác hoặc cách giải quyết cho trường hợp của mình ko
    Thanks mọi người nhiều
    Quote Quote

  2. #2
    Tham gia
    06-09-2014
    Bài viết
    105
    Like
    11
    Thanked 14 Times in 13 Posts
    Trong câu hỏi của bạn đã thấy có vấn đề là ko rõ ràng thi ai trả lời cho bạn được

  3. Thành viên Like bài viết này:


  4. #3
    Tham gia
    04-12-2004
    Location
    TP.HCM
    Bài viết
    5,242
    Like
    34
    Thanked 895 Times in 566 Posts
    Giao tiếp là giao tiếp cái gì? Bạn nghĩ C ở đây đóng vai trò là một loại server và cho phép PHP đứng vai trò client để kết nối vào theo mô hình client-server?

    Người ta "giao tiếp" PHP với C/C++ theo kiểu này http://en.wikipedia.org/wiki/HipHop_for_PHP hoặc theo cách này là chính.

    Cái kiểu client-server như bạn chủ topic trình bày thì quá khó hiểu bởi C không chạy sẵn trong máy dạng dạng daemon process hay services nên PHP giao tiếp với C là giao tiếp ra sao, mình chưa thể hình dung.
    "bất khả tri"

  5. Thành viên Like bài viết này:


  6. #4
    Tham gia
    24-12-2014
    Bài viết
    6
    Like
    4
    Thanked 0 Times in 0 Posts
    để mình giải thích thêm
    mình mún viết 1 page bằng php kiểu như thống kê số lượng máy đang online đóng vai trò là server và ở client sẽ chạy 1 code C, khi client online sẽ kết nối đến server và gửi thông tin của mình đến server để server quản lý
    Ko biết như vậy đã rõ nghĩa chưa ?
    cám ơn 2 bạn đã góp ý

  7. #5
    Tham gia
    10-12-2004
    Location
    HCMC
    Bài viết
    2,121
    Like
    283
    Thanked 720 Times in 362 Posts
    Giả sử webserver chạy php và viết một module tên là keepalive.php, nhiệm vụ của module này như sau:
    -nếu có ai gọi URL và truyền vô tham số thì xử lý, vd: http://x.x.x.x/cgi-bin/keepalive.php...2.3.4&param1=x thì biết client có địa chỉ 1.2.3.4 mới gọi, các tham số của client đó là param1=x.

    ở client, là module viết bằng C, chạy ở service mode, nghĩa là sẽ start cùng thời điểm với windows, đăng kí service, mỗi 5ph nó sẽ gọi URL http://x.x.x.x/cgi-bin/keepalive.php...2.3.4&param1=x, sửa IP 1.2.3.4 thành IP của nó, truyền mấy tham số bạn muốn vô chỗ param. Module C/C++ có thể tham khảo: http://stackoverflow.com/questions/1...request-with-c
    có thể viết bằng MFC, sử dụng CHTML cho lẹ, không thì lên search cái gọi URL từ C/C++.
    Được sửa bởi pinochu lúc 18:57 ngày 25-12-2014

  8. Thành viên Like bài viết này:


  9. #6
    Tham gia
    06-12-2013
    Bài viết
    335
    Like
    135
    Thanked 30 Times in 27 Posts
    Bạn tìm hiểu cách hoạt động của framework Phalcon xem sao, nó được chạy xử lí từ nhân C rồi truyền ra cho Php đó.
    Mong giúp được bạn.

  10. Thành viên Like bài viết này:


  11. #7
    Tham gia
    04-12-2004
    Location
    TP.HCM
    Bài viết
    5,242
    Like
    34
    Thanked 895 Times in 566 Posts
    Cứ tưởng là C chạy ở trên server và làm việc với PHP ngay trên server chứ. Cách của bạn chủ topic thì không phải là giao tiếp giữa C và PHP như phần lớn mọi người ở đây hiểu.

    Cách của chủ topic là giao tiếp giữa một client bằng phần mềm - ở đây là viết bằng ngôn ngữ C/C++ (không phải bằng trình duyệt) với một web server (có thể là bất kỳ, nhưng trường hợp này là web server chạy PHP).

    Như vậy, có thể đọc một cuốn sách / bài viết về cách HTTP làm việc thế nào sau đó tham khảo tài liệu của ngôn ngữ lập trình đang sử dụng để viết kết nối, có ví dụ đầy trên mạng.
    "bất khả tri"

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •