$_POST
変数を使用してデータベースに何かを挿入しようとすると、問題が発生します。
現在、これは私がセットアップした方法です。これらの変数を渡すと、機能します。実際の例では、すべてを 1 に設定していることに注意してください。
$video_id = 1;
$user_id = 1;
$session_id = 1;
$user_rating = 1;
$conn = new PDO("mysql:host=$hostname;dbname=db_name", $username, $password);
$q = $conn->prepare('INSERT INTO video_rating (rating, video_id, user_id, sessionid) VALUES (?, ?, ?, ?)');
$q->execute(array($user_rating, $video_id, $user_id, $user_rating));
ただし、POST変数を使用すると
$video_id = $_POST['video_id'];
$user_id = $_POST['user_id'];
$session_id = $_POST['session_id'];
$user_rating = $_POST['user_rating'];
同じ PDO 実行を実行しても、機能しません。
私のフォームはこんな感じです。
<form id="rate-form" method="post" enctype="multipart/form-data">
<input class="auto-submit-star" type="radio" name="user-rating" value="1" title="Very poor"/>
<input class="auto-submit-star" type="radio" name="user-rating" value="2" title="Poor"/>
<input class="auto-submit-star" type="radio" name="user-rating" value="3" title="OK"/>
<input class="auto-submit-star" type="radio" name="user-rating" value="4" title="Good"/>
<input class="auto-submit-star" type="radio" name="user-rating" value="5" title="Very Good"/>
<span id="hover-test" style="margin:0 0 0 15px;" class="rate-text"></span>
<input type="hidden" name="video_id" value="251"/>
<input type="hidden" name="user_id" value="3"/>
<input type="hidden" name="session_id" value="1"/>
<input type="hidden" name="rate_form" />
</form>
なぜそれが機能しないのか、私が見落としている可能性があるものを見ることができますか。