Ознакомьтесь с нашей политикой обработки персональных данных
  • ↓
  • ↑
  • ⇑
 
Записи пользователя: Plexx (список заголовков)
14:18 

Группировка + сортировка как?

Plexx
Имеем таблицу
id user_id date text
1 | 1 | 14-09-2012 15-00 | бла бла
2 | 2 | 14-09-2012 16-00 | бла бла
3 | 1 | 14-09-2012 17-00 | бла бла
4 | 2 | 14-09-2012 18-00 | бла бла

Нужно получить результат

4 | 2 | 14-09-2012 18-00 | бла бла
3 | 1 | 14-09-2012 17-00 | бла бла

Как?

При группировке и последующей сортировке выводит не правильно. А точнее самые первые по дате.

@темы: MySQL, Вопросы

20:49 

Помогите составить запрос

Plexx
Имеется таблица друзей

usid
frid
approve

usid - тот кто предложил дружбу
frid - тот кому предложили дружбу
approwe ( 0 или 1 ) 0 - ждем подтверждения 1 - дружим

имеем две переменные

$user - id человека у которого смотрим общих друзей
$you - id мой

Вопрос.

Как будет выглядеть запрос при котором будут выводится все общие друзья между двумя юзерами ($user и $you)

@темы: MySQL, PHP, Вопросы

12:42 

Древовидные комментарии

Plexx
Помогите разобраться в выводе древовидных комментариев.

Можешь разжевать дураку по поводу древовидных комментариев. не могу никак вникнуть в массивы.

Вот я делаю запрос (будем работать пока только с id)
таблица
id text answer

Select id from comments where answer = 0 order by id desc limit 5

создаю массив
$comm = array();
while ($row = ....)
$comm[$row['id']] = $row;

Получаю на выходе 5 комментариев

Далее мне нужно выбрать другие комментарии которые относятся к родителю

Select id from comments where id in (" . join(", ", array_keys($comm)) . ")

создаю массив
$treecomm = array();
while ($row = ...)
$treecomm[$row['id']] = $row;

А как теперь через foreach это все собрать? Т.е на выходе получить 5 родителей и под каждым все их потомки?

@темы: PHP, Вопросы

12:45 

Как будет выглядеть запрос?

Plexx
Кратко о теме. Хочу реализовать систему друзей на сайте.

Имеем таблицу "Друзья"

CREATE TABLE IF NOT EXISTS `users_friends` (
`user_id` int(11) default '0',
`friend_id` int(11) default '0',
`approve` tinyint(1) default '0',
KEY `user_id` (`user_id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;

user_id - id человека кто предлагает дружбу
friend_id - id человека кому предлагаем дружбу
approve - может принимать значение 0 или 1. (Т.е. если 0 то предложение дружить не подтверждено, и собственно если 1 то когда человек кому предложили дружбу подтвердил что хочет дружить)

Имеем так же таблицу юзеров users где находятся все данные. Имя Фамилия и т.д.

Так вот о главном. Все работает замечательно.

Использую простой запрос для вывода друзей у пользователя.

имеем GET переменную $user_id которая равна id тому человеку у которого мы просматриваем друзей

SELECT a.*, b.*
FROM users as a
RIGHT JOIN users_friends as b ON (b.user_id = ".$user_id." or b.friend_id=".$user_id.") and b.approve='1'
WHERE (a.user_id = b.user_id or a.user_id = b.friend_id) and a.user_id!='".$user_id."'

А теперь захотелось возле каждого юзера вывести кнопку дружбы или удаления друга

Голову ломаю как будет выглядеть запрос.. Подскажите пожалуйста.

Если я вывожу у себя на страничке друзей. то соответственно везде будет гореть кнопка удалить друга.
Но если я захожу к другим то там получается тоже будет гореть кнопка удалить друга.. а нужно что бы горела та кнопка которая соответствует моим условиям. Т.е. что бы проверялся каждый юзер на соответствие моей дружбы.

есть глобальная переменная $member[id] которая равна моему id

@темы: MySQL, PHP, Вопросы

10:08 

подскажите по регулярке

Plexx
имеем текст. вернее картинки

$text ="<имг src="ююю/wink.gif"><имг src="ююю/1279788629_news_open.jpg">";

preg_match( "#<имг src="http://[\](.+?\.jpg)[\].*?/">#i", $text , $image);

echo $image;

почему при таком регулярном выражении выводит ююю/wink.gif"/>

а если поставить пробел между двумя картинками тогда выводит нормально. В чем проблема?

@темы: PHP, Вопросы

21:53 

Реализация комментариев как?

Plexx
Задача построить дерево комментариев.

Имеем таблицу
com_id
post_id
text

кол-во выводимых коментариев пусть будет 7

нужно выстроить их в таком виде.

-------------------
post_id =9
--------------------
com_id =75
com_id =71
--------------------
post_id = 10
--------------------
com_id =74
com_id =73
com_id =72
-------------------
post_id = 5
------------------
com_id =70
com_id =69

т.е. нужно комментарии не просто вывести, а объединить их к общей новости и если например новый комментарий под com_id =76 будет написан например в новости post_id = 5 то следовательно комментарии примут вид

-------------------
post_id = 5
------------------
com_id =76
com_id =70
-------------------
post_id =9
--------------------
com_id =75
com_id =71
--------------------
post_id = 10
--------------------
com_id =74
com_id =73
com_id =72

Помогите решить задачу.

@темы: PHP, Вопросы

16:50 

Jquery эффект срабатывает один раз.

Plexx
Ребят такая не задача.

есть комментарии

после удаления одного комментария в место него появляется див блок что комментарий успешно удален
А к этому блоку применен эффект исчезновения


$(document).ready(function () {
setTimeout(function () { $('.infojs').fadeTo(100, 0,
function () { $('.infojs').slideUp(400); }); }, 2000);
return false;
});


Но почему то этот эффект срабатывает только один раз. Дальше если нажимать на удаление то диалогове окно не исчезает...

Что не так?

@темы: Ajax, jquery

00:07 

Помогите с функцией

Plexx
Есть таблица
date title

подскажите функцию которая бы разбивала новости на дни.
т.е.

5 октября
---------
title1

6 октября
----------
title2
title3
title4

7 октября
-----------
title5

@темы: PHP, Вопросы

19:37 

Задача php

Plexx
Имеется вывод циклом трех строк.

Как мне эти три строки разбить и вывести в разных частях сайта по одно?

я делаю цикл. и вывожу. Но вывод будет сразу трех полей в одном месте...

нужна помощь. Я так догадываюсь нужно массив создать и foreach вывести с разными индексами в теге.

но как это выглядеть будет в коде?
id - name
1 - Тег1
2 - Тег2
3 - Тег 3

while() {

name = $row[name];

}

@темы: Вопросы, PHP

19:52 

Помогите собрать запрос

Plexx
есть таблица user
поля
id name tag
1 Игорь 1,5,8,10

в поле tag записываются id тегов через запятую

как мне выбрать юзеров по конкретному тегу.

т.е. мне нужно например выбрать всех юзеров у которых в поле tag есть 8ка например.

@темы: PHP, Вопросы

18:03 

Перенос слов

Plexx
вообщем проблема такая.
есть строчка цикл

автомобиль мотоцикл бревно


а иногда когда много слов получается что кнопка удалить переходит отдельно на новую строку

автомобиль мотоцикл бревно
автомобиль мотоцикл бревно


как избежать этого?

@темы: CSS, Вопросы

21:51 

Вставка в поле input

Plexx
Ребят вопрос.
Есть ajax поиск слов.

т.е. начал искать по буквам "авт" нашло автомобиль. Мне нужно при нажатии на автомобиль что бы это слово в input попало.(авт заменилось на автомобиль)

Как сделать передачу слова при клике на него в поле формы?

@темы: ajax, Вопросы

02:01 

Дата рождения

Plexx
Ребят подскажите скрипт выбора даты рождения при регистрации что бы проверял скольок дней в месяце и вычислял високосный год.

@темы: ajax

15:37 

Задачка по sql

Plexx
Здравствуйте ребята.

Вот такая вот задачка.

есть таблица pm

id subj text user user_from pm_read folder
1 Привет Привет 1 2 no inbox
2 Привет Привет 1 2 no outbox

При отправке письма юзеру под id 2 создается
id1 Привет Привет 1 2 no inbox где user_from - id юзера кому отправляем
Тут же при отправке письма создается копия в исходящих

при прочтении юзером письма pm_read обновляется на yes (т.е. становится с пометкой прочитано)

Как сделать что бы и исходящее письмо которое у меня в почтовом ящике сохраняется при прочтении адресатом менялось pm_read на yes?

@темы: MySQL, Вопросы

17:07 

Как будет выглядеть сложный запрос.

Plexx
Привет всем.

Задачка такая. нужно вывести всех гостей у пользователя + вывести кнопки дружить или удалить из друзей.

Есть три таблицы

Таблица гостей _users_guest
id date you_id profile
1 05-05-10 2 1
1 05-05-10 3 1

Таблица друзей _users_friends
you_id friend_id date approve
1 2 05-05-10 1
2 1 06-05-10 1

Таблица пользователей _users
user_id name
1 Игорь
2 Катя
3 Вера

Глобальная переменная $user = $member_id['user_id']; т.е. мой id

Запрос сейчас для вывода гостей такой

SELECT you_id, profile, date, users.name,

FROM users_guest

LEFT JOIN users
ON users.user_id = you_id

WHERE profile='$user' ORDER BY date DESC

Выводит гостей Катя Вера


Далее нам нужно вывести рядом с Именами кнопки дружбы или если дружат то удалить
Таблица _users_friends
если люди дружат то перекрестные поля получаются

you_id friend_id date approve
1 2 05-05-10 1
2 1 06-05-10 1

Что бы узнать дружат или нет я использую такой запрос

$row['user_id'] - id пользователя в цикле.

SELECT * FROM users_friends where (you_id = '$user' and friend_id='".$row['user_id']."') or (you_id = '".$row['user_id']."' and friend_id='$user')

count num_rows делает подсчет
если 2 совпадения то дружат если ни одного то не дружат


А вот встал вопрос как это все объединить?

Мне нужно вывести всех гостей из одной таблицы (_users_guest ). У гостей выдернуть имена и прочую информацию из (_user) и рядом с каждым гостем показать кнопки (дружить/удалить друга) из третьей таблицы (_users_friends)

Помогите все связать одним запросом.


Этот вопрос начисто взорвал мозг одному из модераторов сообщества.
Пожалуйста, оформляйте вопросы так, чтобы их можно было нормально прочесть и понять.

@темы: PHP, Вопросы

13:55 

Две Get переменные одним запросом. как?

Plexx
Добрый день.

И снова вопрос.

есть таблица пользователей
id name

есть две GET переменные которые передают id пользователей

как сделать запрос который бы вытащил по двум GET переменным имена двух пользователей?

ну т.е. есть $_GET['drug'] и $_GET['ya']

нужно одним запросом вытащить из одной таблицы

и сделать две переменные $drug и $ya

@темы: PHP, Вопросы

14:06 

Запрос по двум параметрам

Plexx
Добрый день ребята.

Для вас простой вопрос.. Для меня пока трудновато.(за исключением двух запросов=)))


Имеем таблицу user

строки
id name pol rate

нужно выбрать двух пользователей у которых максимальный рейтинг и разный пол(pol)

т.е.
Девушка - рейтинг (макс)
Парень - рейтинг(макс)

@темы: PHP, Вопросы

18:36 

Построение структуры модуля

Plexx
Сколько раз смотрел скрипты и везде по разному написано построение структуры модуля.

Например имеем доску объявлений которая состоит из нескольких страниц
1 - категории объявлений
2 - все объявления в заданной категории
3 - само объявление

можно конечно разнести это все в отдельные файлы php.

Но хотелось бы одним файлом.

Вот и создался вопрос. как это лучше сделать.

структура

index.php?do=doska - Главная страница доски с категориями
index.php?do=doska&cat_id - Категория со всеми объявлениями
index.php?do=doska&add_obj - Добавление объявления
index.php?do=doska&edit_obj - Редактирование объявления

Начинаем собирать костяк и встает вопрос как это будет выглядеть в файле

if (isset($_GET['cat_id'])) { $get_cat_id = intval($_GET['cat_id']); }
if (isset($_GET['add_obj'])) { $get_add_obj = $_GET['add_obj']; }
if (isset($_GET['edit_obj'])) { $get_edit_obj = $_GET['edit_obj']; }

тут насмотрелся кто пишет
1 вариант

if ($do = "doska" && $get_cat_id=='' && $get_add_obj =='' && $get_edit_obj=='') {
}
elseif ($do = "doska" && $get_cat_id!='' && $get_add_obj =='' && $get_edit_obj=='') {
}
elseif и т.д.

2 вариант

swith ($_GET['do']) {

case "doska":
break:

case "doska/add_obj"
break:

}

так как же все таки правильно расписывать отдельные страницы в одном файле.?

@темы: PHP, Вопросы

15:48 

Цикл в цикле как избежать?

Plexx
Имеем города
Имеем пользователей

таблицы
1 - city
id name
2 - users
id name city

Нужно выбрать все города и рядом с каждым городом вывести цифрой кол-во юзеров которые отмечены в данном городе.

Т.к. опыта маловато то первым делом приходит на ум запрос в цикле. Но так оч много запросов получается.

$sql_result = mysql_query("SELECT * FROM city");
while ($row = mysql_fetch_assoc($sql_result)) {


$sql_result1 = mysql_query("SELECT city FROM users WHERE city='".$row['id']."'");
$count = mysql_num_rows($sql_result1);


$content .="$row['name'] - $count";

}

Как это будет выглядеть через COUNT и LEFT JOIN одним запросом? Как не пытался что то не получается.

@темы: PHP, Вопросы

Сообщество PHP программистов

главная