[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: sql запрос в цикле
Гость_Иван
имеется значит таблица, количество и имя столбцов которой указывает пользователь (предполагаемые имена полей таблицы mysql). Затем задаются значения соответствующих полей. Все значения передаются методом POST в функцию создания таблицы. И в общем вот вопрос, таблица создана и нужно теперь в поля запихнуть поочередно значения типа $_POST['name1'] , $_POST['name2'] , $_POST['name3']. Можно использовать обычный цикл в зависимости от выбранного количества полей и для каждого значения организовывать запрос типа INSERT, но тогда будет создаваться новая строка для каждого значения. Каким образом сделать чтоб записывались данные в одну строку в таблице с данными?



Спустя 12 минут, 6 секунд (5.08.2011 - 18:14) Invis1ble написал(а):
делай $_POST['name'] массивом (для удобства), далее формируй примерно такой запрос:
$query = "INSERT INTO `table` (перечисление имен полей) VALUES
('"
. implode("','", array_map('mysql_real_escape_string', $_POST['name'])) . "')";

Спустя 14 минут, 38 секунд (5.08.2011 - 18:28) Гость_Иван написал(а):
тогда получается имена полей тоже собрать в массив и сделать так
$query = "INSERT INTO `table` ('" . implode("','", array_map('mysql_real_escape_string', $_POST['name'])) VALUES
('" . implode("','", array_map('mysql_real_escape_string', $_POST['value'])) . "')";

Спустя 2 минуты, 26 секунд (5.08.2011 - 18:31) Invis1ble написал(а):
типа того, только кавычки для имен полей поменяй с ' на `

Спустя 3 минуты, 58 секунд (5.08.2011 - 18:35) Гость_Иван написал(а):
Спасибо, попробую!

Спустя 19 часов, 32 минуты, 37 секунд (6.08.2011 - 14:07) Гость_Иван написал(а):
А вот еще вопрос, правда уже не в тему. Есть ли вариант добавления данных в таблицу, если создается аналогичная с таким же именем? Типо CREATE IF NOT EXIST ELSE INSERT INTO или просто сделать условие, что если mysql_error возвращает конкретную ошибку то тогда уже организовать insert?

Спустя 56 минут, 44 секунды (6.08.2011 - 15:04) Michael написал(а):
ну вообще так обычно не делают - в смысле динамическое создание таблиц.
возможно вы - неверно сконструировали структуру БД.
Но если надо проверять, то не надо на ошибке логику строить. Запрос:
SHOW TABLES

вернет список существующих таблиц в текущей БД

Спустя 2 дня, 6 часов, 7 минут, 4 секунды (8.08.2011 - 21:11) Гость_Иван написал(а):
че-то прям замешательство, все работало нормально, даже хорошо, сегодня вот такие вещи начались
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1


Спустя 44 минуты, 33 секунды (8.08.2011 - 21:56) Invis1ble написал(а):
запрос покажи, телепаты в отпуске

Спустя 25 минут, 28 секунд (8.08.2011 - 22:21) Гость_Иван написал(а):
сам уже дотелепатил wink.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.