-1

我希望在网络服务器上使用 perl 脚本来创建一些基于来自端口的信息的插入语句。我有基于 PHP 的网站与 db 通信,我希望了解如何通过 perl 连接到同一个 PHP db 连接并在 perl 脚本函数中记录我的插入语句。(对不起,我是 perl 新手,我没有创建那个 perl 脚本。)

4

2 回答 2

2

您可以使用具有相同凭据的相同数据库,但不能使用相同的连接。

如果您不知道凭据,请进入您的 php 脚本并查找mysql_connect命令或更现代的命令来创建数据库连接。恐怕我不熟悉那个,所以我不能帮你。获取服务器名称、端口、数据库名称和用户名/密码,并在您的 Perl 程序中将其与DBI一起使用。

use strict;
use warnings;
use DBI;

my $dbh = DBI->connect('dbi:mysql:db:hostname', $username, $password);

您现在可以使用该$dbh数据库句柄将数据插入到您的数据库中,例如:

my $sth = $dbh->prepare('INSERT INTO my_table (foo, bar) VALUES (?, ?)');
$sth->execute('val1', 'val2');

# or more fancy, if you have an array ref with more array refs:

foreach my $line ( @$data ) {
  $sth->execute( @$line );
}
于 2013-06-28T14:28:40.037 回答
0

使用 Perl 连接到 MySQL 非常简单。只需使用与 PHP 相同的详细信息,前提是两个脚本都在同一台服务器上(或者您的 DBMS 接受外部连接)。

use DBI;
$dbh = DBI->connect("dbi:mysql:databasename:localhost", 'username', 'password');
于 2013-06-28T14:27:50.060 回答