我的perl文件和php文件在同一个文件夹中。我在cmd中从perl调用php脚本
我的database.pl脚本
#!/usr/bin/perl
while (2)
{
my $php = `sample.php`;
sleep (10);
}
我的sample.php文件
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "mydb";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "UPDATE users SET name1='Doe' WHERE id=1";
if ($conn->query($sql) === TRUE) {
echo "Record updated successfully";
} else {
echo "Error updating record: " . $conn->error;
}
$conn->close();
?>
现在当我运行database.pl
文件时,我的sample.php
文件每隔10秒就会在编辑器中打开..现在应该如何让我的php文件运行,以便它应该运行UPDATE查询
答案 0 :(得分:0)
根据您使用的操作系统,有不同的方法。好像你在 Windows 上。
.php
扩展程序的默认操作可能是在编辑器中打开它。更改反引号行以使用PHP解释器显式运行脚本。
my $php = `php sample.php`;
这当然要求Windows知道php
的位置。它应该在您的PATH
变量中。
如果您使用 Linux ,则可以使php脚本可执行...
$ chmod u+x sample.php
...并从当前的直接电话中调用它。
my $php = `./sample.php`;
请注意,您可以使用DBI从Perl执行SQL查询,或者在PHP中实现该循环并在那里重用数据库连接。
答案 1 :(得分:0)