如何在 php 页面中 运行 一个 nodejs 脚本
how to run a nodejs Script in php page
我正在尝试使用 nodejs、php、html 和 css.
构建一个 html scada 系统
我的程序:我在 nodejs 中有这个 9 行代码;我使用此代码以 modbus rtu 协议与 PLC 通信。如果我从终端 运行 代码运行完美;
我的问题:我正在尝试运行这段代码使用php提交按钮在html 页面,但我认为我遗漏了一些东西,因为它不起作用。
谢谢。
nodejs 代码 :
// create an empty modbus client
var ModbusRTU = require("modbus-serial");
var client = new ModbusRTU();
// open connection to a serial port
client.connectRTUBuffered("COM2", { baudRate: 9600 ,parity: "even", dataBits: 8, stopBits: 1} , write );
function write() {
client.writeCoil(22, 1);
}
html代码::
<html>
<head>
<title>PHP isset() example</title>
</head>
<body>
<form method="post">
<input type="submit" value="Sum" name="Submit1"><br/><br/>
<?php
if(isset($_POST["Submit1"]))
{
exec('write.js >/dev/null/ 2>&1 &');
}
?>
</form>
<script src="write.js" type="text/javascript" ></script>
</body>
</html>
您想执行一个没有解释器就无法执行的js 文件。您的 exec
代码应如下所示:
exec('node write.js')
这里node
是你节点实例的可执行文件。
我正在尝试使用 nodejs、php、html 和 css.
构建一个 html scada 系统我的程序:我在 nodejs 中有这个 9 行代码;我使用此代码以 modbus rtu 协议与 PLC 通信。如果我从终端 运行 代码运行完美;
我的问题:我正在尝试运行这段代码使用php提交按钮在html 页面,但我认为我遗漏了一些东西,因为它不起作用。
谢谢。 nodejs 代码 :
// create an empty modbus client
var ModbusRTU = require("modbus-serial");
var client = new ModbusRTU();
// open connection to a serial port
client.connectRTUBuffered("COM2", { baudRate: 9600 ,parity: "even", dataBits: 8, stopBits: 1} , write );
function write() {
client.writeCoil(22, 1);
}
html代码::
<html>
<head>
<title>PHP isset() example</title>
</head>
<body>
<form method="post">
<input type="submit" value="Sum" name="Submit1"><br/><br/>
<?php
if(isset($_POST["Submit1"]))
{
exec('write.js >/dev/null/ 2>&1 &');
}
?>
</form>
<script src="write.js" type="text/javascript" ></script>
</body>
</html>
您想执行一个没有解释器就无法执行的js 文件。您的 exec
代码应如下所示:
exec('node write.js')
这里node
是你节点实例的可执行文件。