PHP.SU

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

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

> Найдено сообщений: 5
Bloodv1rus Отправлено: 23 Мая, 2013 - 22:37:48 • Тема: Сложнейший SQL запрос • Форум: Работа с СУБД

Ответов: 3
Просмотров: 881
LIME пишет:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT eu6xi_k2_items.id,title,catid,introtext,created,eu6xi_users.name FROM eu6xi_k2_items
  2.   JOIN podp_category ON id_user=$user_id AND catid=id_cat AND podp_category.sub_date<created
  3.   JOIN podp_delete ON podp_delete.user_id=$user_id AND item_id!=eu6xi_k2_items.id
  4.   JOIN eu6xi_users ON eu6xi_users.id=created_by
  5.  WHERE published=1
вроде ничего не забыл


Хм, если в podp_delete Добавить одну запись - все работает как часики, если добавить вторую - результаты удваиваются. Тоесть если с пустой podp_delete в массиве 9 записей, добавив в podp_delete одну запись исключающую из массива айди - станет 8 записей, проделав подобную операцию еще раз - результатов будет 17..
Bloodv1rus Отправлено: 23 Мая, 2013 - 21:58:10 • Тема: Сложнейший SQL запрос • Форум: Работа с СУБД

Ответов: 3
Просмотров: 881
Здравствуйте уважаемые форумчане. Предо мной встала сложная задача вывода информации из бд. Помогите пожалуйста, если сможете...
[code=htmlphp][/code]Таблица с материалами, eu6xi_k2_items
-------------------------------- -------------------------------- -------------------------------- ----------------
|---id----|----title----|----catid----|----published----|introtext----|-------created-------|----created_by----|
|----1----|----title1---|------6------|--------1--------|----intro1---|-2012-09-18 17:01:39-|--------42--------|
|----11---|----title2---|------1------|--------1--------|----intro2---|-2012-09-19 17:01:39-|--------42--------|
|----13---|----title3---|------2------|--------0--------|----intro3---|-2012-09-20 17:01:39-|--------42--------|
|----23---|----title4---|------12-----|--------0--------|----intro4---|-2012-09-21 17:01:39-|--------42--------|
|----43---|----title5---|------5------|--------1--------|----intro5---|-2012-09-22 17:01:39-|--------44--------|
-------------------------------- -------------------------------- -------------------------------- ----------------

Таблица с подписанными категориями, podp_category
-------------------------------- -----------------
|----id_user----|----id_cat----|----sub_date----|
|------42-------|-------6------|---2013-05-23---|
|------41-------|-------6------|---2013-05-24---|
|------43-------|-------6------|---2013-05-25---|
|------42-------|------12------|---2013-05-26---|
|------42-------|------77------|---2013-05-27---|
-------------------------------- -----------------

Таблица с удаленными материалами, podp_delete
-------------------------------- -
|----user_id----|----item_id----|
|------42-------|------13-------|
|------18-------|------13-------|
|------23-------|------11-------|
|------42-------|------34-------|
|------49-------|------56-------|
-------------------------------- -


Таблица с пользователями, eu6xi_users
-------------------------
|----id----|----name----|
|----42----|---admin----|
|----43----|---VIRUS----|
|----44----|---ToCAs----|
|----45----|---sergey---|
-------------------------

Загружая страницу я знаю лишь айди пользователя. Допустим человек залогинен на сайте, и меет айди 42. И теперь нужно составить запрос так, чтобы человек увидел на странице только те материалы (eu6xi_k2_items), на которые он подписан. Материал должын быть опубликован (published=1) Увидить только те, которые позже появились чем он подписался (podp_category), исключить материалы которые он не хочет видеть (podp_delete). И подменить created_by из айди на реальное имя Грубо говоря нужно получить массив с следующими данными:
Array
(
[0] => Array
(
[0] => 1
[0] => title1
[0] => 6
[0] => 1
[0] => intro1
[0] => 2012-09-18 17:01:39
[0] => admin
)

)
Bloodv1rus Отправлено: 21 Мая, 2013 - 00:05:11 • Тема: Вывод данных из бд за исключением.. • Форум: Вопросы новичков

Ответов: 1
Просмотров: 94
Здравствуйте. Ломаю голову, как лучше быть. Есть набор данных, грубо говоря таблица со строками:
ID | NAME | CONTENT
И есть вторая таблица с
ID | NOSEE
Как лучше выводить данные из первой таблицы, исключая те ID, номера которых есть в NOSEE

То есть.. Первая таблица допустим имеет данные:
CODE (htmlphp):
скопировать код в буфер обмена
  1. 1 | Val | Hallo world
  2. 2 | VIRUS | I'ts Work!
  3. 3 | Lt.RAT | It's no work!

-------------------------
А вторая таблица имеет данные:

Как мне лучше вывести из первой таблицы все данные, за исключением тех айдишников, что находятся во второй таблице..
Грубо говоря мне нужно получить
PHP:
скопировать код в буфер обмена
  1. [0]
  2.   (
  3.     [0] = 1
  4.     [1] = Val
  5.     [2] = Hallo world
  6.   )
  7. )
Bloodv1rus Отправлено: 09 Сентября, 2011 - 17:18:32 • Тема: Запись в бд • Форум: Работа с СУБД

Ответов: 4
Просмотров: 1236
Мелкий пишет:
Строковые значения в запросе необходимо брать в кавычки.

Bloodv1rus пишет:
id я получаю запросом, и добавляю +1 к нему

См. auto_increment



PHP:
скопировать код в буфер обмена
  1. mysql_query ("INSERT INTO jos_jcomments (id, object_id, name, username, comment) VALUES ($idcom, 1, '$nam', $nam, $txt) ");  



Не помогло, или я не так понял...
Bloodv1rus Отправлено: 09 Сентября, 2011 - 16:40:49 • Тема: Запись в бд • Форум: Работа с СУБД

Ответов: 4
Просмотров: 1236
Имею бд на сервере MySQL
Имею таблицу jcomments, ее поля
id, name, object_id, comment
Надо добавить запись, в нее. Есть все данные, name | comment - $_POST['name'] | $_POST['text']

id я получаю запросом, и добавляю +1 к нему. Все шоколадно до тех пор пока я не начинаю писать в бд...
Если писать ТОЛЬКО id - записывается норм, если добавить еще object_id ( в моем случае просто 1) то тоже норм, но если добавить ...


mysql_query ("INSERT INTO jos_jcomments (id, object_id, name, username, comment) VALUES ($idcom, 1, $nam, $nam, $txt) ");

Если в текстовые поля ( на форме хтмл) писать цифры - То запись в бд добавляется... если руквы - то не добавляется...
name varchar(255) Столбик имени
comment text столбик комментария..
Что я делаю не так ? уже весь мозг сломал =(

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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB