ゲストの姓とゲストの姓を入力する2つの入力フィールドがあります。ユーザーが「追加」をクリックすると、それらの2つの値は一時的にテキストエリアに保存され、(jqueryで)追加されるため、必要な数だけ追加できます。複数の行の姓と名をテキストエリアから配列に分割する方法
<input id="guest_first" type="text" name="guest_first" placeholder="Guest First Name" class="form-control"/>
<input id="guest_last" type="text" name="guest_last" placeholder="Guest Last Name" class="form-control"/>
<textarea id="guest_storage" name="guest_storage" class="form-control"></textarea>
のjQuery:
$('#guest_storage').append(
$('#guest_first').val() + ' ' + $('#guest_last').val() + '\r\n');
guest_lastなどでguest_firstボックスとドウでジェーンに入る、私は予想通りテキストエリアに次を得ます。
Jane Doe
John Doe
Ehye Sukk
私は "guest_first"と "guest_last"を含むmysqlテーブルを持っています。私は、これらの配列を読み込み、データベースに挿入するために、各レコードに最初と最後が含まれるようにしようとしています。これは私が失われたところです。
私は爆発をしなければならないと思っていますが、それぞれの宇宙の名前と姓が別々の配列であることを確認するためにスペースを探していると思います。私は考えています:
$guests = $_POST['guest_storage'];
$guests = explode(" ", $guests);
foreach($guests as $key=>$guest) {
foreach(explode("\r\n", $guest) as $value) { //or preg_split('/\r\n|[\r\n]/', $guests);
...NOT SURE WHAT WOULD BE DONE HERE
}
}
これは私の挿入文のようになります。
$guest_query = "INSERT INTO registration (guest_first, guest_last) VALUES ('$guest_first', '$guest_last')";
$guest_data = mysqli_query($dbConnect, $guest_query);
は私が上に複雑このアム?
もちろん、これにはSQLインジェクション防止は含まれていませんし、姓とミドルネームの間のスペースも考慮していません。お返事ありがとうございます – muttBunch
短い答え:最初の分割/改行、次にスペースで区切ります。長い答え:誰かが "guest_first"として "Joana Maria"、そして "guest_last"として "Garcia Sanchez"のような二重の名前で入力した場合、あなたは何をしようとしているかによって異なります。 –