0
複数の選択質問からの回答に応じてデータベースに文字列を送信しようとしています。質問には、ESEA、FACEIT、Matchmakingという3つの回答があります。答えに応じて、私はデータベースに文字列を送りたいと思う。データベースはVarcharで設定されています。PHP複数のselectformが指定されたとおりにデータベースに文字列を送信しない
私の複数選択問題を処理するためのHTMLフォームは次のようになります。
<select name="multipleSelect[]" multiple>
<option value="" disabled selected>Choose your option</option>
<option name="esea" value="esea">ESEA</option>
<option name="faceit" value="faceit">FaceIT</option>
<option name="matchmaking" value="matchmaking">Matchmaking</option>
</select>
<label>What are you looking to play?</label>
このような形の外観を処理するためのコード:
$esea = '';
$faceit = '';
$matchmaking = '';
foreach ($_POST['multipleSelect'] as $value) {
if ($value == 'esea') { $esea = 'ESEA'; }
if ($value == 'faceit') { $faceit= 'FACEIT'; }
if ($value == 'matchmaking') { $matchmaking= 'Matchmaking'; }
}
それから私はこのように私のデータベースに送信します:
$sql = "INSERT INTO users (profilename,region, age, ranks, esea, faceit, matchmaking, textarea1) VALUES (
'{$mysqli->real_escape_string($_POST['profilename'])}',
'{$mysqli->real_escape_string($_POST['region'])}',
'{$mysqli->real_escape_string($_POST['age'])}',
'{$mysqli->real_escape_string($_POST['ranks'])}',
$esea,
$faceit,
$matchmaking,
'{$mysqli->real_escape_string($_POST['textarea1'])}')";
$insert = $mysqli->query($sql);
残念ながら、このコードは機能しません。それは、multipleSelect質問の文字列ではなく、残りの値を送信するだけです。私は間違って何をしているのか分からない?
ああくそに適用されるには、あなたの男をありがとう!どうもありがとうございます! – Tim