我想這是一個簡單的問題,我根本無法找出爲什麼。 (希望這不是重複的)..插入到MySQL數據庫和PHP
我的意圖是從輸入和textarea中獲取信息,並將其插入到我的數據庫中已存在的「日誌」的適當表中。然而,在點擊提交併且沒有收到任何錯誤之後,沒有任何東西添加到數據庫中......思考?
這裏是我的 「視圖」(post.php中):
<fieldset>
<form method="post" action="push.php">
<input type="text" name="datetitle" /><br />
<textarea name="journalcontent"></textarea><br />
<input type="submit" />
</form>
<?php echo $datetitle ?>
<p><?php $output ?></p>
</fieldset>
這裏是我的 「指數」(push.php)具有明顯的部分省略:
<?php
$dsn = '*';
$username = '*';
$password = '*';
include "model.php";
try {
$db = new PDO($dsn, $username, $password);
} catch (PDOException $exc) {
echo 'connection failed';
exit;
}
echo 'goodzo';
$datetitle = $_POST['datetitle'];
$journalcontent = $_POST['journalcontent'];
if (!empty($datetitle)) {
$output = add_entry($datetitle, $journalcontent);
} else {
$output = "empty";
}
include "post.php";
?>
,最後我的模型.php:
<?php
function add_entry($datetitle, $journalcontent) {
global $db;
$query = 'INSERT INTO journals
(entry_date, contents)
VALUES
($datetitle, $journalcontent)';
try {
$statement = $db->prepare($query);
$statement->execute();
$statement->closeCursor();
} catch (PDOException $e) {
$error_message = $e->getMessage();
display_db_error($error_message);
}
}
?>
does not the model.php include have have to after the PDO connection?否則$ db指什麼都沒有.... – KyleK
@KyleK不,因爲它只在函數被調用時被引用。 * PHP * – 19greg96
[你真的應該修復您的應用程序討厭的SQL注入漏洞。(http://stackoverflow.com/questions/60174/how-to-prevent-sql-injection-in-php) – PeeHaa