PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (30): В начало « ... 11 12 13 14 [15] 16 17 18 19 ... » В конец

> Найдено сообщений: 446
GoDr Отправлено: 19 Февраля, 2015 - 15:31:21 • Тема: Извлечение и добавление в базу • Форум: Напишите за меня, пожалуйста

Ответов: 9
Просмотров: 88
LIME, ну и что лучше в данной ситуации? Закатив глазки
GoDr Отправлено: 19 Февраля, 2015 - 15:28:24 • Тема: интерфейс функции "поиска" • Форум: Объектно-ориентированное программирование

Ответов: 16
Просмотров: 2820
Цитата:
вообще из-за отсутствия стандартов в написании параметров, а посему очень легко допустить ошибку
Не вижу проблему. Опиши в классе допустимые поля таблиц: не совпало - викинь. Опиши правил для значений: получил значение - проверь его или приведи к нужному типу.

А предусмотреть в проекте все фильтры.. ну как-то не разумно.. Конечно если есть только одна таблица и узкая задача.... Подмигивание
GoDr Отправлено: 19 Февраля, 2015 - 15:22:43 • Тема: Как устроена функция упоминаний по имени? • Форум: Работа с СУБД

Ответов: 8
Просмотров: 1213
b0lsh0i_b0ber, тогда задачу поставь правильно! А то "а как это сделано у дяди Вани".. Так спроси у дяди Вани.. Хорошо
GoDr Отправлено: 19 Февраля, 2015 - 15:19:05 • Тема: Checkbox отправляет значение не нажатым. • Форум: Вопросы новичков

Ответов: 8
Просмотров: 928
lwmisanea, значит что-то делаешь не так.. Если значение не выбрано. то ничего не отправляется.

Покажи всю форму и результат $_REQUEST
(Добавление)
lwmisanea пишет:
Я пробовал этот вариант
этот вариант делается именно для того чтобы всегда было значение. Значит ты где-то оставил поле
CODE (html):
скопировать код в буфер обмена
  1. <input type="hidden" name="price" id="price" value="0" />
GoDr Отправлено: 18 Февраля, 2015 - 19:02:24 • Тема: интерфейс функции "поиска" • Форум: Объектно-ориентированное программирование

Ответов: 16
Просмотров: 2820
а чем не по душе то? Передавай массив..
PHP:
скопировать код в буфер обмена
  1. // наши данные
  2. $data['param1'] = 'val1';
  3. $data['param2'] = 'val2';
  4. $data['param3'] = 'val3';
  5.  
  6. // делаем запрос
  7. qqq($data);
  8.  
  9.  
  10. function qqq($data = array())
  11. {
  12.     $where = array();
  13.  
  14.     // формируем условие
  15.     foreach ($data as $key => $value) {
  16.         $where[] = "`" . $key . "`='" . $value . "'";
  17.     }
  18.     // окончательный запрос
  19.     $sql = "SELECT * FROM `table` WHERE " . implode(' AND ', $where);
  20.  
  21.     // смотрим что получилось
  22.     echo $sql;
  23. }


ну или смотри ещё func_get_args(), но это будут уже навороты
GoDr Отправлено: 18 Февраля, 2015 - 18:45:01 • Тема: Выборка из БД • Форум: SQL и Архитектура БД

Ответов: 12
Просмотров: 88
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT ..... FROM ..... WHERE `pole` LIKE '%4%';
GoDr Отправлено: 18 Февраля, 2015 - 18:40:14 • Тема: Mysql и <select> • Форум: Вопросы новичков

Ответов: 8
Просмотров: 391
в общем где-то примерно так Улыбка
http://jsfiddle[dot]net/7yarkLLL/
GoDr Отправлено: 18 Февраля, 2015 - 13:43:40 • Тема: Mysql и <select> • Форум: Вопросы новичков

Ответов: 8
Просмотров: 391
и что за данные и в каком количестве??? А то может проще закачать все данные на страницу в скрытые блоки и при выборе определённого SELECT показывать определённую таблицу
GoDr Отправлено: 18 Февраля, 2015 - 13:37:09 • Тема: помогите сделать • Форум: Напишите за меня, пожалуйста

Ответов: 5
Просмотров: 58
Где-то так
PHP:
скопировать код в буфер обмена
  1.  
  2. // Ставил флаг ошибки.. Так на всякий случай
  3. $flag = false;
  4.  
  5. // Жизнь кеша (15 мин)
  6. $time_cache = 60 * 15;
  7.  
  8. // Проверяем существует ли файл кеша
  9. if (file_exists('cache_sql_q')) {
  10.  
  11.     // Достаём наши данные из файла и преврашаем их в нужный нам вид
  12.     $q = unserialize(file_get_contents('cache_sql_q'));
  13.  
  14.     // Проверяем есть ли в данных наш ключик
  15.     if (isset($q['timer_cache_sql_q'])) {
  16.  
  17.         // Проверяем значение и если разница во времени меньше 15 минут
  18.         if (((time()) - $q['timer_cache_sql_q']) < $time_cache) {
  19.  
  20.             // Поменяем флажок на "ВСЁ ОК"
  21.             $flag = true;
  22.  
  23.             // Для наглядности и примера выведем информацию по кешу
  24.             echo 'Используется данные кеша. Осталось ' . ($time_cache - (time() - $q['timer_cache_sql_q'])) . ' секунд<hr>';
  25.         }
  26.     }
  27. }
  28.  
  29. // Проверяем наш флажок.. Нашёлся ли кеш с правильным временем
  30. if (!$flag) {
  31.     // Достаём данные из базы
  32.     // В моём случае для примера просто сделал массив
  33.     $q = array();
  34.     $q[1]['name'] = 'Name 1';
  35.     $q[1]['title'] = 'Title 1';
  36.     $q[2]['name'] = 'Name 2';
  37.     $q[2]['title'] = 'Title 2';
  38.     $q[3]['name'] = 'Name 3';
  39.     $q[3]['title'] = 'Title 3';
  40.     $q[4]['name'] = 'Name 4';
  41.     $q[4]['title'] = 'Title 4';
  42.  
  43.     // Добавляем ещё уникальный ключик с датой
  44.     // я не буду доверять дате создания файла, всегда какие-то проблемы с сервером
  45.     $q['timer_cache_sql_q'] = time();
  46.  
  47.     // Сериализуем данные и записываем их в файл
  48.     file_put_contents('cache_sql_q', serialize($q));
  49.  
  50.     echo 'Используется данные из Базы Данных.<hr>';
  51. }
  52.  
  53. // Ну и делаем с данными всё что угодна
  54.  
  55. print_r($q);
GoDr Отправлено: 18 Февраля, 2015 - 12:52:35 • Тема: Извлечение и добавление в базу • Форум: Напишите за меня, пожалуйста

Ответов: 9
Просмотров: 88
LIME, ну понятно что один вариант сначала удаляет дубликат, потом его вставляет. Второй же переписывает дубликат. Я имел в виду принципиальная разница, что эффективнее..

Может я не правильно рассуждаю но всё же..
Допустим мы имеем подготовленное выражение на вставку и вставляем несколько сотен записей. В первом варианте идёт постоянно механизм вставки, т.е. один раз подготовили и теперь только меняем данные и отсылаем их. Во втором варианте подготовленное выражение тоже на вставку, но в случае с дубликатом идёт уже UPDATE, т.е. я предполагаю уже другое подготовленное выражение...


PS
Хотя может я и перемудрил Язычок
GoDr Отправлено: 18 Февраля, 2015 - 10:20:39 • Тема: Извлечение и добавление в базу • Форум: Напишите за меня, пожалуйста

Ответов: 9
Просмотров: 88
LIME, а в чём у них разница? между "REPLACE" и "update on duplicate key"
GoDr Отправлено: 18 Февраля, 2015 - 10:14:23 • Тема: помогите сделать • Форум: Напишите за меня, пожалуйста

Ответов: 5
Просмотров: 58
используй кеширование.
Помести результат запроса в файл.
Перед очередных запросом проверь есть ли файл. Да - проверь время. Прошло 15 минут с момента создания - получи новые данные. Нет файла - получи новые данные
GoDr Отправлено: 17 Февраля, 2015 - 19:34:04 • Тема: Извлечение и добавление в базу • Форум: Напишите за меня, пожалуйста

Ответов: 9
Просмотров: 88
смотри в сторону REPLACE
Цитата:
Оператор REPLACE работает точно так же, как INSERT, за исключением того, что если старая запись в данной таблице имеет то же значение индекса UNIQUE или PRIMARY KEY, что и новая, то старая запись перед занесением новой будет удалена.

http://phpclub[dot]ru/mysql/doc/replace[dot]html
GoDr Отправлено: 17 Февраля, 2015 - 19:24:05 • Тема: разлогин и авторизация • Форум: Вопросы новичков

Ответов: 3
Просмотров: 187
Tyoma5891, ты данные авторизации где-то хранишь же : сессии, куки ... т.п. Нажал на кнопку и перепиши всё
(Добавление)
.
вот только смысл совсем не понятен.. или это очередная попытка взлома Радость
GoDr Отправлено: 17 Февраля, 2015 - 19:19:55 • Тема: Почему выводится только одно повторяющееся бесконечно значение из базы? • Форум: Вопросы новичков

Ответов: 2
Просмотров: 157
А как надо?
Цитата:
ЕСЛИ условие TRUE то вывести $row['name']

Условие не меняется, а значит будет выполняться бесконечно
(Добавление)
.
перебрать можно так например
PHP:
скопировать код в буфер обмена
  1. foreach($row as $value)
  2. {
  3. echo $value['name'];
  4. }

Страниц (30): В начало « ... 11 12 13 14 [15] 16 17 18 19 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB