This week I do some final touch to the PCB board design. (Spartan6 TQFP, PIC32, HC-05).
And then I get my hands on to some programming. My goal is to make a Php server that is able to be ping from my Wt::Client(Ajax) that I previously done. The idea is the same with using a PIC32 MCU to act as a ‘Server’ but now is to use PHP on Linux. Surprisingly the C network programming knowledge that I learn/implemented on microcontroller is exactly the same with PHP.
- Open/Accept a socket
- Bind a port
- Listen socket
- Write socket
- Close/Disconnect socket
To run a PHP script on Linux
Create a PHP file (example.php) -> Open terminal: $ph example.php
Next is to have Wt::Client(Ajax) ping to this PHP server. It is understood that the IP address here will be ‘localhost’, so in Wt::Client(Ajax) just have ~url: “http://localhost:port”~ then observe the result from either Client side or Server side. The Client method I am using requires a browser to execute, after some testing I realize the PHP Server I implemented is incorrect. because after a single READ/WRITE transaction, PHP Server will come to halt.
The problem is due to the open and close socket, therefore I change the network programming of my PHP to use PHP Stream Server.
$socket= stream_socket_server("tcp://localhost:8181", $errno, $errstr);
With the above implementation, I manage to have a PHP Server communicate with Wt::Client