私はPHPのファイルに複数の座席を送信するフォームを持っています。私はSQLに各座席を挿入するforeachループを作成しました。何らかの理由で、私はそれを送る必要があるすべての情報を得ることができますが、それは挿入されません。foreach PHPを使用してSQLテーブルにデータを挿入
外部キーと関係があるかどうかわかりません。しかし、私がしたいことは、どの電子メールがどの座席を選択したかを示すことです。私はまた、SQLに送信されるときに各シートを無効にしたい。
これが私の出力です。
You are currently in database admin.
[email protected]
1A
1B
1C
Data added successfully.
Back to seating.
これは、あなたがVALUESキーワードの後に括弧を必要とする私のflightselect.php
<?php
error_reporting(E_ALL);
ini_set('display_errors',1);
include_once 'includes/db_connect.php';
include_once 'includes/functions.php';
sec_session_start();
if (login_check($mysqli) == true) {
$logged = 'in';
} else {
$logged = 'out';
}
$username = $_SESSION['username'];
echo '<p>You are currently '.$logged. ' database '.$username. '.</p><br>';
$getemail = mysqli_query($mysqli, "SELECT email FROM members WHERE username = '$username' ");
$email = '';
while($gear = mysqli_fetch_array($getemail)) {
echo $gear['email'];
$email = $gear['email'];
}
echo $gear."<br>";
if(isset($_POST['seatme'])){
if(!empty($_POST['flight'])){
foreach($_POST['flight'] as $key=>$selected){
echo $selected."<br>";
$result = mysqli_query($mysqli, "INSERT INTO seating (seat_id, email, flight_id)
VALUES ('$selected', '$gear', '1')");
}
}
}
echo "<font color='green'>Data added successfully.";
echo "<br/><a href='user.php'>Back to seating.</a>";
?>
スクリーンショットの代わりにコードを含めてください。 – BPS
あなたはどのようなエラーメッセージを表示していますか、またはあなたのコードが動作していないことを示す証拠はありますか? – BPS
注: 'mysqli'へのオブジェクト指向インタフェースは、コードの読み込みと監査を容易にし、' mysql_query'インタフェースと混同しにくいものになりました。手続き型スタイルに多額の投資をする前に、それを切り換える価値があります。例: '$ db = new mysqli(...)'と '$ db-> prepare(" ... ")'手続き型インタフェースはmysqli' APIが導入されたPHP 4時代のアーティファクトであり、コード。 – tadman