このメソッドを使用してデータベースにデータを保存しています:
$content = $_POST['content'];
$content = mysqli_real_escape_string($mysqli,$content);
$stmt = $mysqli->prepare("INSERT INTO na_posts(postuid,content) VALUES (?, ?)");
$stmt->bind_param("ss",$post_id,$content);
$stmt->execute();
$stmt->close();
そして、次のコードを使用してデータベースからデータを取得します。
$sql = "SELECT * FROM na_posts WHERE postuid = '" . $id . "'";
$stmt = $mysqli->query($sql);
$row = $stmt->fetch_Object();
echo nl2br($row->content);
しかし、出力は次のようになります。
これは 1 行目です \r\n これは 2 行目です
新しい行がこのように表示されるのはなぜ\r\n
ですか?
mysqli_real_escape_string()
私が読んだように、セキュリティにとって重要な呼び出しを削除すると機能します。