Здравствуйте друзья! У меня такая проблема: У меня есть таблица mysql по имени custom_fields. В ней есть ячейка с типом selectbox, которая содержит список городов России. Мне как то надо вывести данные из этой ячейки в поле формы для выбора пользователем. Как это сделать? вот код:
<?php
// установка связи с сервером
$link = mysqli_connect('localhost', 'root', 'root', 'staffproduction');
if ( !$link ) die("Ошибка подключения");
// делаем выборку из таблицы
$result=mysqli_query($link, 'SELECT * FROM `custom_fields` WHERE field_id in (10)');
// выполнение SQL запроса и получение всех записей (строк) из таблицы `table_name`
while ($row=mysqli_fetch_array($result))
{ // вывод данных
echo '<form>';
echo '<select>';
echo '<option>';
echo $row['select_options'];
echo '</option>';
echo '</select>';
echo '</form>';
}// /while
?>
Тут как раз понятно что на выходе — форма на сайте с HTML <select> со списком городов.
А вот что на входе непонятно. В БД никаких типов selectbox вроде бы не бывает (может какая-то особенность CMS).
Да где-ж понятно? Я не про форму визуальную. Вот какую выборку из БД нудно зделать в данном случае, просто тупо вывести название города из БД по запросу пользователя? Есть он в БД или нет? Так это каке-то тупое задание, можно просто в таком случае дублировать пользовательский ввод не обращаясь к БД.
Ребят, спасибо что откликнулись! Наверное это особенность cms. В админке там есть пункт свои поля. Там можно присвоить тип поля ВЫПАДАЮЩИЙ СПИСОК. Каждая строка - это пункт меню. Сохраняет он в таблице costom_fields. Получается после сохранения в БД это свое поле является строкой в этой таблице. И вот сам список городов получается в ячейке в столбце select_option c id 10. Если бы это была отдельная таблица было бы проще, понимаю. Но тут вот какая заморочка!
На выходе выпадающий список, каждый его пункт это город. Нот он выводит у меня все города одним пунктом, мне вот и не понятно если свойство поля selectbox это что то ж значит?
Эта таблица с данными всех полей созданных мной в админке. Там есть столбцы:field_id, field_user, type, select_option, label, discription. А как это сделать?
хм, странно, куда-то имя поля пропало? То есть к этому значению видимо надо обращаться через $row[3]. Возможно надо было добавить параметр MYSQLI_ASSOCPHP: mysqli_result::fetch_array - Manual
(а, ну точнее если было BOTH по умолчанию, то в массиве все значениями продублированы и для числового индекса, и для строкового с именем столбца)
Так а города-то в каком виде?
Если они разделены каким-то символом (запятая, …), то чтоб разделить их в массив есть функция explode.
Если там например JSON, то json_decode.
и т.д.