HTMLフォームに入力されたデータをSQLデータベースに送信したい、つまり、特定の値を特定の列に関連付ける新しい行を作成したい。同様の質問があることは知っています。回答を読みましたが、何も機能していないようです。
send_post.php
<?php
//Connecting to sql db.
$connect = mysqli_connect("my host","my user","my passwrod","my db");
//Sending form data to sql db.
mysqli_query($connect,"INSERT INTO posts (category, title, contents, tags)
VALUES ('$_POST[post_category]', '$_POST[post_title]', '$_POST[post_contents]', '$_POST[post_tags]')";
?>
post.html#フォーム
<form onSubmit="send_post.php" method="post">
<h3>Category:</h3>
<input type="text" name="post_category">
<h3>Post title:</h3>
<input type="text" name="post_title">
<h3>Post tags (a,b,c...):</h3>
<input type="text" name="post_tags">
<h3>Post (use html):</h3>
<textarea rows="20" cols="50" name="post_contents"></textarea>
<input type="submit">
</form>
私のデータベースの「投稿」テーブルの列:
pid
title
contents
tags
category
pid
持っauto_increment
ている
を含むすべての列にpid
、「正しい」順序で値を送信しようとしました。
mysqli_connect
動作する私の別の.phpファイルからコピーしたので、その部分は問題ではありません。
サーバーのphp-sqlの互換性も問題ではありません。別の.phpファイルでdbからデータを取得することに成功したからです(手動で挿入されたデータ)。