我对PHP编码比较陌生,我正在尝试编写一个将数据插入SQL表的程序。我的代码如下所示。
logCatcher.php
代码:
<?php
//Connection Credentials
$servername = "localhost";
$username = "uname";
$password = "pwd";
$dbname = "sometable";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO tabledata(timestamp,src,dst,user, agent, requestType, URL)
VALUES ('Source','Destination','John', 'Doe', 'GET', 'http://www.google.com/')";
if ($conn->query($sql) === TRUE) {
$last_id = $conn->insert_id;
echo "New record created successfully. Last inserted ID is: " . $last_id;
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
我尝试通过写一个看起来像这样的批处理文件在服务器上执行它....
代码:
C:\php.exe" -f C:\logCatcher.php
echo "Executed"
但是当我执行批处理文件时没有任何反应。数据库中未创建任何数据。显然没有联系。你能指导一下我做错了吗?
感谢。
SK
答案 0 :(得分:0)
TRY
$sql = "INSERT INTO tabledata(src,dst,user, agent, requestType, URL)
VALUES ('Source','Destination','John', 'Doe', 'GET', 'http://www.google.com/')";
答案 1 :(得分:0)
我认为您错过了双引号字符作为批处理文件中的第一个字符。注意它应该是这样的:
"C:\php.exe" -f C:\logCatcher.php
echo "Executed"
虽然您的初始帖子缺少&#34;一开始。
答案 2 :(得分:0)
问题已解决。我没有使用正确的.exe文件来排除PHP脚本。它现在有效。 :)我还必须包含TimeStamp值以确保列不为空。
谢谢!
SK