好吧,請承擔事實,我是一個總的初學者,當涉及到PHP。 我想插入一些值到我的SQL數據庫(SQL Server 2008r2),但我不斷收到http錯誤500(內部服務器錯誤)。我不知道我做錯了什麼,所以也許你們有些人可以幫忙。http錯誤500當試圖插入日期到SQL服務器2008r2使用PHP
我connection.php:
<?php
try
{
//connectie met sql-server, in dit geval met windows authenticatie
$pdo = new PDO('sqlsrv:server=.\SQLEXPRESS;database=Marcel;','','');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch (PDOException $e)
{
echo 'Unable to connect to the database server.' . $e->getMessage();
exit;
}
?>
我的形式:
<form method="post" action="InsertBlogEntry.php">
<div class="form-group">
<label for="Artikelnaam">Artikelnaam:</label>
<input type="text" class="form-control" id="Artikelnaam" name="Artikelnaam">
</div>
<div class="form-group">
<label for="Artikelonderwerp">Artikelonderwerp</label>
<input type="text" class="form-control" id="Artikelonderwerp" name="Artikelonderwerp">
</div>
<div class="form-group">
<label for="Artikeltext">Artikeltext</label>
<textarea class="form-control" id="Artikeltext" rows="10" name="Artikeltext" style="resize: vertical;"></textarea>
</div>
<button type="submit" class="btn btn-default" style="display: block; margin: auto;">Submit</button>
</form>
我InsertBlogEntry.php:
<?php
//set local time for $timeSubmitted
setlocale(LC_TIME, 'NL_nl');
//define values
$timeSubmitted = strftime('%A %d %B %Y om %H:%M',time());
$Author = $_SESSION['login_user'];
$AtrikelNaam = $_POST['Artikelnaam'];
$Onderwerp = $_POST['Artikelonderwerp'];
$ArtkikelInhoud = $_POST['Artikeltext'];
//include connection
include ('connection.php');
//statement
$sql = sqlsrv_query("INSERT INTO BlogEntries (BlogTimeSubmitted, BlogAuthor, ArtikelName, ArtikelOW, ArtikelInhoud) VALUES ('$timeSubmitted', '$Author', '$AtrikelNaam', '$Onderwerp', '$ArtkikelInhoud')");
//prepare and execute query
$stmt = sqlsrv_query($pdo, $sql);
if($stmt)
{
echo 'succes';
}
else
{
echo 'failure';
die (print_r(sqlsrv_errors(), true))
}
//close connection
sqlsrv_close($pdo);
?>
我試圖在插入值的表:
CREATE TABLE BlogEntries
(
ID int not null IDENTITY(1, 1),
BlogTimeSubmitted datetime,
BlogAuthor varchar(64),
ArtikelName varchar(64),
ArtikelOW varchar (64),
ArtikelInhoud varchar(max)
);
//just for dropping the table
drop table BlogEntries
alter table BlogEntries
ADD CONSTRAINT PK_BlogID PRIMARY KEY (ID)
我真的希望你們中的一些可以幫我解決這個問題,再次請溫柔,因爲我總PHP初學者:)
編輯
我增加了一些下面我的IIS日誌可能提供更多的信息,我試圖分析和谷歌上搜索他們,但我不能弄清楚也許有些你可以:
2016-05-25 17:41:00 ::1 POST /marcel+website/InsertBlogEntry.php - 22926 - ::1 Mozilla/5.0+(Windows+NT+10.0;+WOW64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/50.0.2661.102+Safari/537.36 http://localhost:22926/marcel%20website/AddBlogEntry.php 500 0 0 6
2016-05-25 17:41:00 ::1 POST /marcel+website/InsertBlogEntry.php - 22926 - ::1 Mozilla/5.0+(Windows+NT+10.0;+WOW64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/50.0.2661.102+Safari/537.36 http://localhost:22926/marcel%20website/AddBlogEntry.php 500 0 0 8
2016-05-25 17:41:00 ::1 POST /marcel+website/InsertBlogEntry.php - 22926 - ::1 Mozilla/5.0+(Windows+NT+10.0;+WOW64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/50.0.2661.102+Safari/537.36 http://localhost:22926/marcel%20website/AddBlogEntry.php 500 0 0 11
日誌中的任何內容?其他腳本/ PHP代碼工作連接到數據庫? – Doon
查看Web服務器錯誤日誌。你也沒有使用準備好的語句。 http://bobby-tables.com/ SQL注入 –
@Doon我不確定你的意思是什麼日誌(我對此非常陌生),但我可以訪問數據庫並在我的頁面上顯示其內容,沒有問題,我也有使用數據庫的工作登錄名 –