私はPHPが初めてで、MySQLiが初めてで、5つの変数で構成されるデータベースに行を挿入しようとしています。
if($_POST['submit']) {
$title = mysqli_escape_string($_POST['title']);
$content = $_POST['content'];
$author = $_SESSION['fullname'];
$publishedtime = time();
$pageID = $_POST['pageid'];
$connection = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
if ($connection->errno) {
printf("Connection failed: %s\n", $connection->error);
exit();
}
$author = $_SESSION['fullname'];
$publishedtime = time();
$q = "INSERT INTO posts (title, content, author, publishedtime, pageID) VALUES ('".$title."', '".$content."', '".$author."', '".$publishedtime."', '".$pageID."')";
if (!$dbc->query($q)) {
echo "INSERT failed: (" . $dbc->errno . ") " . $dbc->error;
}
echo "Newest user id = ",$dbc->insert_id;
$connection->close();
}
else {
addPostForm();
}
そして、私はこれらのエラーを受け取ります:
警告: mysqli_escape_string() は、11 行目の /admin/manage.php で指定された、正確に 2 つのパラメーターを想定しています。
致命的なエラー: 27 行目の /admin/manage.php の非オブジェクトに対するメンバー関数 query() の呼び出し
データベースは正常に読み取れますが、挿入できません。
ありがとう