タイトルが意味を成してくれることを願っています。私はソーシャルネットワーキングサイトの一種を持っています。プロフィールページには、HTMLフォームが、ログイン時に作成されたユーザー名セッション変数を使用してMySQLデータベースにユーザー入力を格納するPHPファイルに送信されます。
HTML::PHPフォームの宛先をセッション変数に依存させても問題ありませんか?
<html>
<body>
<form method='POST' action='destination.php'>
<input type='text' name='email'/>
<input type='text' name='location'/>
<input type='submit' value='Submit'/>
</form>
<body>
</html>
destination.php:
<?php
session_start();
$username = $_SESSION['username'] //from before (e.g. login)
//CONNECT TO MYSQL
$servername = "127.0.0.1";
$sqlusername = "root";
$sqlpassword = "*********";
$dbname = "**********";
$conn = new mysqli($servername, $sqlusername, $sqlpassword, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = $conn->prepare("insert into users(email, location) values(?, ?) where username=?");
$sql->bind_param("sss", $_POST['email'], $_POST['location'], $username);
$sql->execute();
$sql->close();
$conn->close();
?>
これは、しかし、私は開発マシン上でそれを実行しているとするとき、複数のユーザーが意志、それが実際にどのように動作するか不思議でした、素晴らしい作品。このようなフォームをほぼ同時に転記すると、セッションは「混乱」するでしょうか?私は全く新しいので、セッションの仕組みは正確にはわかりませんが、上記のコードは安全ですか?私は何ができないのでしょうか?
ありがとうございます。非常に明確な。 –