html — невозможно распечатать несколько значений в одной ячейке CSV-файла с помощью переполнения стека

Я не могу напечатать несколько значений из $venue, Значения мест могут быть одиночными или множественными, так как это флажок, но сейчас более одного значения не будет печататься в файле CSV. Что я могу изменить?

<?php

$Email=$_REQUEST['Email'];
$FirstName=$_REQUEST['FirstName'];
$LastName=$_REQUEST['LastName'];
$Cell_Phone=$_REQUEST['Cell_Phone'];
$Venue=$_REQUEST['Venue'];

$message = "".
"Email: $Email" . "\n" .
"First Name: $FirstName" . "\n" .
"Last Name: $LastName" . "\n" .
"Cellphone: $Cell_Phone" . "\n" .
"Venue: $Venue" . "\n" .

//I am able to write to the csv file but not when I have multiple values selected for Venue
$fh = fopen("info.csv", "a");

$cr = "\n";
$data = "$FirstName" . ',' . "$LastName" . ',' . "$Email" . ',' . "$Cell_Phone". ',' . "$Venue". $cr;

if($fh){
fwrite($fh, $data);
fclose($fh);
}

if(isset($_POST['Submit'])){

header('Location:thanks.html');
exit;

}

?>

Это HTML-код для места проведения

<fieldset>

<legend id="VenueLabel" class="desc" for="Venue[]">
<span style="color: #cc0000;">*</span> Venue:
</legend>
<div>
<input id="1" name="Venue[]" type="checkbox" value="166729" tabindex="7">
<label class="choice" for="1">Venue 1</label>
</div>
<div>
<input id="2" name="Venue[]" type="checkbox" value="166730" tabindex="8">
<label class="choice" for="2">Venue 2</label>
</div>
<div>
<input id="3" name="Venue[]" type="checkbox" value="166728" tabindex="9">
<label class="choice" for="2">Venue 3</label>
</div>
</fieldset>

-1

Решение

Лучше использовать fputcsv чтобы создать файл CSV на PHP, я обновил ваш код, чтобы использовать его.

$Email=$_REQUEST['Email'];
$FirstName=$_REQUEST['FirstName'];
$LastName=$_REQUEST['LastName'];
$Cell_Phone=$_REQUEST['Cell_Phone'];
$Venue=$_REQUEST['Venue'];
$Venue_str = implode(', ' , $Venue);

$message = "".
"Email: $Email" . "\n" .
"First Name: $FirstName" . "\n" .
"Last Name: $LastName" . "\n" .
"Cellphone: $Cell_Phone" . "\n" .
"Venue: $Venue" . "\n" .//I am able to write to the csv file but not when I have multiple values selected for Venue
$fh = fopen("info.csv", "a");$data = [$FirstName , $LastName, $Email, $Cell_Phone, $Venue_str];

if($fh){
fputcsv($fh, $data);
fclose($fh);
}

if(isset($_POST['Submit'])){

header('Location:thanks.html');
exit;

}

?>
2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector