获取PHP文件以写入SQL表

时间:2016-02-25 07:25:07

标签: php mysql sql

我对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

3 个答案:

答案 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