誰でも助けることができます。内部メッセージング サービス用に PHP に渡される値に mysql_real_escape_string を使用してセキュリティを強化しようとしていますが、値がデータベースに挿入されていないため、どこかで構文が間違っているに違いありません。チュートリアルやヘルプなどを探しましたが、うまくいくのに苦労しています。
私が使用しているコードは以下のとおりです。エスケープされていない値 ($email、$from、$time) は正しく入力されていますが、その他の値は空白で入力されています。
<?php
session_start();
$conn = mysqli_connect('localhost', 'username', 'password', 'dbname');
$email=$_SESSION['email'];
$to = $_POST ['touser'];
$toemail = $_POST['touseremail'];
$from = $_SESSION['name'];
$message = $_POST['message'];
$subject = $_POST['subject'];
$time = time();
$query ="INSERT INTO messages
(to_user, to_email, subject, message, from_user, from_email, daterecord)
VALUES (
'" . mysql_real_escape_string($conn, $to) . "',
'" . mysql_real_escape_string($conn, $toemail) . "',
'" . mysql_real_escape_string($conn, $subject) . "',
'" . mysql_real_escape_string($conn, $message) . "',
'$from', '$email', '$time')";
$send = $conn -> query($query);
echo "Message sent!";
?>