Пуля — дура. Пых — молодец.

Добро пожаловать на Пыху!

Логин:
Пароль:
 

Нет прописки? Зарегистрируйся!

Новости

Пыха информатор 3.1
Еще более удобное оповещение о флуде!

Краснодарское время: 26 Май, 2012, 12:33:31

Страниц: [1]
Печать
Автор Тема: Генерация insert запроса в базу данных.  (Прочитано 137 раз)
0 Пользователей и 1 Гость смотрят эту тему.
PedroGansales    ↓ 
11 Февраль, 2012, 12:31:33
НЕ ХУЕТА! ХУЕТА!


Карма: 0
Сообщений: 6
Сила слова: 0

сабж. Может у кого завалялся скрипт PHP по массовой вставке insert в одном запросе.
SQL
INSERT INTO Product_D VALUES
('B', 1158, 'PC'),
('C', 2190, 'Laptop'),
('D', 3219, 'Printer'),...,(и тд);

Записан
Ivan    ↓ 
11 Февраль, 2012, 12:36:19 , спустя 4 минуты 46 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 27
Сообщений: 1366
Сила слова: 1.98

Из моего старого кода
 
PHP
    /**
     * @example $this->db->insert('users', array('user_id' => 1));
     * @example $this->db->insert('users', array( array('user_id' => 1), array('user_id' => 2), ));
     * @param string $table
     * @param array $assoc
     * @return DBQuery_MySQL
     */

    public function insert($table, array $assoc) {
        if (isset($assoc[0])) {
            /* Multi Insert String */
            $keys = array_keys($assoc[0]);
            $assoc_esc = array();
            foreach ($keys as $key) {
                $assoc_esc[] = '`' . $key . '`';
            }
            $sql = 'INSERT INTO `' . $table . '` (' . join(',', $assoc_esc) . ') VALUES ';
            foreach ($assoc as $data) {
                $assoc_esc = array();
                foreach (array_values($data) as $value) {
                    $assoc_esc[] = str_replace(array("'NULL'", '&'), array('NULL', '&'), '\'' . $this->escape($value) . '\'');
                }
                $sql .= '(' . join(',', $assoc_esc) . '),';
            }
            $sql = substr_replace($sql, ';', -1, 1);
        } else {
            /* Simple Insert String */
            $assoc_esc = array();
            foreach ($assoc as $key => $value) {
                $assoc_esc['`' . $key . '`'] = str_replace(array("'NULL'", '&'), array('NULL', '&'), '\'' . $this->escape($value) . '\'');
            }
            $sql = 'INSERT INTO `' . $table . '` (' . join(',', array_keys($assoc_esc)) . ') VALUES (' . join(',', array_values($assoc_esc)) . ');';
        }
 
        return $this->query($sql, false, true);
    }
Записан

PedroGansales    ↓ 
11 Февраль, 2012, 12:42:49 , спустя 6 минут 30 секунд
НЕ ХУЕТА! ХУЕТА!


Карма: 0
Сообщений: 6
Сила слова: 0

Cooool ...
Записан
Sinkler    ↓ 
11 Февраль, 2012, 12:43:24 , спустя 35 секунд
НЕ ХУЕТА! ХУЕТА!

Похуй, пляшем!
Группа: Джедаи

Карма: 73
Сообщений: 6808
Сила слова: 1.07

три строки уже люди написать не могут, дожились
Записан

PedroGansales    ↓ 
11 Февраль, 2012, 12:47:58 , спустя 4 минуты 34 секунды
НЕ ХУЕТА! ХУЕТА!


Карма: 0
Сообщений: 6
Сила слова: 0

ибо пятница)
Записан
phpdude    ↓ 
11 Февраль, 2012, 01:10:03 , спустя 12 часов 22 минуты 5 секунд
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 345
Сообщений: 20791
Сила слова: 1.66

ибо лохи
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
ivanscm    ↓ 
11 Февраль, 2012, 02:17:14 , спустя 1 час 7 минут 11 секунд
НЕ ХУЕТА! ХУЕТА!

Синий властилин
Группа: Джедаи

Карма: 0
Сообщений: 1125
Сила слова: 0

ибо нехуй лохам по пятницам
Записан

Страниц: [1]
Печать
 

Перейти в:  

Этот топик скрыли: adw0rd