У меня есть этот код, который позволяет мне извлекать данные из флажка, еще нет mysql, так что вы можете помочь мне изменить это?
Форма такова:
<form action="checkbox.php" method="post"> <input type="checkbox" name="checkbox[]" value="hostess_name"> <input type="checkbox" name="checkbox[]" value="hostess_familyname_en"> <input type="checkbox" name="checkbox[]" value="hostess_id"> <input type="checkbox" name="checkbox[]" value="hostess_firstname_en"> <br> <br> <input type="submit" name="Submit" value="Submit"> </form>
Введенные значения, как предполагается, являются полями базы данных, тогда у меня есть этот файл checkbox.php, который считывает выбранные значения.
<?php mysql_connect("localhost", "root", "") or die(mysql_error()); echo "Connected to MySQL<br />"; ?> <? /* and in your checkbox.php you do this: */ if(isset($_POST['Submit'])) { echo "<pre>"; print_r($_POST); } $checked = mysql_real_escape_string(implode(',', $_POST['checkbox'])); echo $checked; ?>
Как назначить полям поля значений флажков? То, что я пытаюсь сделать, это сохранить значения и экспортировать их в запрос с помощью implode .. Помогите мне ..
Ваша переменная POST ($ _POST ['checkbox']) на самом деле уже является массивом. Во-первых, чтобы выяснить, с чем вы работаете, сделайте следующее:
echo '<pre>'; print_r ($_POST['checkbox']); echo '</pre>';
Затем просмотрите свой скрипт и посмотрите на результат. Скорее всего, вы увидите массив с некоторыми ключами и значениями. Используя это, вы можете решить, как действовать.
Если бы это был я, я бы сделал что-то вроде следующего, чтобы выполнить вашу задачу:
$sql = "SELECT `table_id_column`, `another_column` "; foreach ($_POST['checkbox'] as $key => $value) { $sql .= ", `$value`"; } $sql .= " FROM `hostess` ORDER BY `another_colmn` ASC";
Пожалуйста, имейте в виду, что разрешение SQL-запроса может быть изменено таким образом, это очень плохая практика. Вы захотите ввести некоторую безопасность в это, прежде чем помещать его в производственную среду.
Люк
использование
foreach($_POST[checkbox] as $key => $value { echo PHP_EOL . "Key is => " . $key . " Value is => " . $value . PHP_EOL; }
Попробуйте это и посмотрите результат, вы увидите, как двигаться дальше.