я этот кусок кода я сделал до сих пор:Несколько ВСТАВИТЬ-х PHP с помощью флажков по
$assign = $_POST['assign'];
if(!empty($name) && !empty($description) && !empty($deadline))
{
if(validateDate($deadline))
{
$final_deadline = strtotime($deadline);
$sql .= "INSERT INTO projects
(project_id, project_name, project_description, project_deadline, project_status, project_priority)
VALUES ('" . $project_id . "', '" . $name . "', '" . $description . "', '" . $final_deadline . "', '" . $status . "', '" . $priority . "');";
if(is_array($assignments))
{
foreach($assignments as $assigned_user)
{
$sql .= "INSERT INTO assignments (user_id, project_id) VALUES('" . $assigned_user . "', '" . $project_id . "');";
}
}
else
{
echo '<br /><br />not an array<br />';
}
$result = mysql_query($sql) or die(mysql_error());
echo '<br />' . var_dump($assignments);
}
else
{
$_SESSION['ERROR'] = "Not a valid deadline";
header("Location: dashboard.php");
}
}
Что бы использовать этот список флажков:
<input type="checkbox" value="<?php echo $row['user_id']; ?>" id="<?php echo $row['username']; ?>" class="usercheckbox" name="assign[]" />
Проблема, которая приходит, когда Я представить форму, которая является для вставки записи для каждого из проверяемых коробок, он возвращает пустой массив ...
он говорит, что это:
Примечание: Не определено индекс: назначение в [..] по линии 41
не массив
NULL
Поэтому в основном галочки нет ничего, флажками уже имеют значения в они, assign[]
верны, теперь я не знаю, в чем проблема, что она ничего не содержит при отправке формы.
** mysql_real_escape_string ** - это еще что-то, что вам нужно для чтения, и изменить 'name =" присваивать [] "' '' '= = присваивать '' браузер автоматически делает массив для отправки. – RobertPitt
mmh ... [] необходимо оставить или $ _POST ['assign'] не будет массивом, а просто будет содержать значение последнего флажка. – pilif