Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
 Аватар для galaid
289 / 34 / 6
Регистрация: 20.09.2011
Сообщений: 464

Универсальная функция вставки данных в БД

28.01.2013, 18:27. Показов 1953. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер!
В базе данных находится множество таблиц с различной структурой (уникальный идентефикатор id имеется у всех таблиц). Операции вставки данных реализуются при помощи разных функций (для каждой таблицы своя функция - INSERTUSER(), INSERTPOST() и т.д.).
Подскажите, есть ли готовое решение "универсальной" функции для вставки данных в таблицы БД. То есть я хочу множетсво имеющихся функций заменить одной. Если готовго решения нет, то какие будут идеи по созданию такой функции?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.01.2013, 18:27
Ответы с готовыми решениями:

Универсальная функция
Напишите пожалуйста прогу.Написать универсальную функцию для вычислениия заданных выражений.В main() обеспечить вызов этой функции и...

Универсальная функция
1.Определим функцию K(n), которая определяет количество цифр в заданном натуральном числе n. 2. Вычисление квадрата целого числа m,...

Универсальная функция
Здравствуйте! Прошу помощи. Можно сделать какую-нибудь универсальную функцию, которой можно было бы передавать массив заголовков столбцов и...

4
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
28.01.2013, 19:08
Цитата Сообщение от galaid Посмотреть сообщение
Подскажите, есть ли готовое решение "универсальной" функции для вставки данных в таблицы БД
да , она называется mysqli_query (или mysql_query , смотря какую версию юзаете) - всё остальное вроде вашей INSERTPOST() пишется под свою таблицу
0
 Аватар для galaid
289 / 34 / 6
Регистрация: 20.09.2011
Сообщений: 464
28.01.2013, 19:20  [ТС]
crautcher, возможно я не так описал то, что мне нужно. Попробую объяснить на конкретном примере:
Кликните здесь для просмотра всего текста
Например, пусть сейчас функции вставки данных выглядят так:
PHP
1
2
3
4
5
6
7
8
function INSERTPOST($content, $title) {
mysql_query("INSERT INTO `posts` (`content`, `title`) VALUES ('$content', '$title')");}
 
function INSERTUSER($email) {
mysql_query("INSERT INTO `users` (`email`) VALUES ('$email')");}
 
function INSERTUSERINFO($city) {
mysql_query("INSERT INTO `userinfo` (`city`, `date`) VALUES ('$city', NOW())");}
Вот пример из 3ех функций. Функции придумал находу, поэтому возможны синтаксические ошибки.

Мне нужно реализовать функцию, заменяющие описанные выше:
PHP
1
INSERT($TABLE, $DATA);
или что-то типо того...
0
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
28.01.2013, 19:30
А ну так у тебя меняются поля в которые вставляем данные , сделай массив шаблонов
PHP
1
2
3
4
5
6
7
8
9
10
function INSERT( $table , $values ) {
 static $query_templates = array(
 'posts' => '(`content`, `title`)',
 'users' => '(`email`)',
 ..
 );
 if (!isset($query_templates[ $table ])) return null;
 ...
//далее составь запрос и выполни
}
1
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
29.01.2013, 16:25
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function insert($table, array $row) {
    $sql = "INSERT INTO `$table` SET ";
    $i = 0;
    foreach ($row as $name => $value)
        $sql .= ($i++ ? "," : "") . "`$name` = ?";
 
    $sql .= ";";
 
    # подставляете значения в шаблон и выполняете
    // $sql, array_values($row)
}
 
insert('user', array(
    'name' => "Пупкин Василий",
    'mail' => "foo@bar.lol",
    // ...
));
Добавлено через 1 минуту
См. также ActiveRecord.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.01.2013, 16:25
Помогаю со студенческими работами здесь

Универсальная функция Ajax
Хочу сделать универсальную функцию Ajax, но не получаеться получить ответ сразу, функция выполняется, а потом приходит ответ... Как...

Универсальная функция вывода
Господа, пытаюсь сделать функцию, которая напечатает массив, и будет универсальна для всех типов и одной структуры. Вот пока все мои...

универсальная функция сортировки
Здраствуйет кто поможет в чем ошибка # include < iostream.h > template < class T > void sort ( T a , int size ) ; main...

Format - универсальная функция преобразования
имеем книгу по Free Pascal, в которой описывется функция Format, указанная в названии темы. в книге фигурирует такое понятие как форматный...

Универсальная функция запросов в базу
Здравствуйте. Есть несколько мест в коде где идет 6-8 запросов в базу, запросы различные (select,insert,update,вызов процедур) запихать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru