Обновить
230
0
ainu@ainu

Пользователь

Отправить сообщение
Альтернатива
Тимур Timurka Тазетдинов(222737) — Мария Чернышева(14335577) — Татьяна Яикина(1072856) — Наталья Ульянкова(119648) — Андрей Gottfried Белоус(696) — Анастасия Желудкова(59) — Павел Дуров(1)
Закрыт список друзей и страница. Извиняйте.
2-й тоже. Вероятно, кривовато, но на скорости сказывается слабо:
После загрузки списка друзей,
for($i=0;$i<=count($zapret)-1;$i++)
{
unset ($friends[$zapret[$i]]);
}
1-й пункт сделал сам.
Честно говоря, удивлён скоростью работы, спасибо!
Чудеса просто.
2-3 секунды на моей 200 000 базе.
Есть 2 пожелания, если сумеете реализовать (я тоже попробую, надеюсь, сумею сделать, не испортив скорости).
1. Список друзей человека это не только все frid одного myid, но и все myid одного frid. Это важно, например, чтобы друзей Дурова находить (а список его друзей закрыт, например, 888570->1 работает на «ура», а наоборот, 1->888570 вылетает с предупреждением о пустом результате (mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:\home\priem\www\graf3.0.php on line 83).
2. Надо уметь закрывать пути через определённых людей, запрещая их.
myid и frid повторяются, нельзя их делать ключевыми.
А насчёт name — это правильно, спасибо. Небольшой минус в том, что просто при просмотре страницы контакта проводится запись в базу, и на страницах размером в 500 контактов чувствуются ощутимые тормоза. При таком подходе они удвоятся.
А скриптик сейчас посмотрим, спасибо.
Да, определение Chrome==Определение Safari
(но определение Chrome!===Определение Safari)
Определение браузера на серверной стороне используется реже определения клиентского.
А грамотное клиентское определение вообще не должно обращаться к UserAgent.
Все, наверное, видели старый бородатый способ либо сотни его вариаций (код на данный момент устарел, привёл просто в качестве примера):
isDOM=document.getElementById //DOM1 browser (MSIE 5+, Netscape 6, Opera 5+) isOpera=isOpera5=window.opera && isDOM //Opera 5+ isOpera6=isOpera && window.print //Opera 6+ isOpera7=isOpera && document.readyState //Opera 7+ isMSIE=document.all && document.all.item && !isOpera //Microsoft Internet Explorer 4+ isMSIE5=isDOM && isMSIE //MSIE 5+ isNetscape4=document.layers //Netscape 4.* isMozilla=isDOM && navigator.appName=="Netscape" //Mozilla или Netscape 6.*

Вообще, определение сводится к ключевым проверкам:
1. Определение Оперы. Если существует window.opera, значит Opera
2. Определение Chrome (ненадёжно)document.all есть в FF, IE и Opera, т.е почти везде. Но попробуте в Chrome ввести в адресной строке javascript: alert(document.all).
3. Для IE есть решение «напролом»:
<![if IE 7]> <script> var IsIE=1 </script> <![endif]>
4. Определение IE6. XMLHttpRequest работает в Opera, FF, IE7, Chrome. Но в IE6 его нет. (проверьте: javascript: alert(typeof XMLHttpRequest))
5. FF определяется чаще всего так: isMozilla=! isMSIE &&! isOpera. Решение «в лоб», ужасное, некрасивое, но для тех, кто верстает только под 3 браузера (часто этого хватает), сойдёт.
5.1 Определение FF возможно внутри кода обработки события: if (typeof e.offsetX == 'undefined') { isFF=1}
Наверное, можно.
Трудность его в том, что к скрипту прилагается серверная часть, а это значит, что желающим его установить также понадобится денвер и минимальные знания MySQL по настройке этого скрипта.
Опера кряхтит но терпит!
ВСЕМ СПАСИБО!
Спасибо от имени хорошего человека!
brutt
Он действительно хороший человек! Честно!
brutt
Он действительно хороший человек! Честно!
Эх, коллега ушёл… Не успели ему карму-то поднять, жаль…
Дождались!
+5
Смотрите! И радуйтесь!
Держите +5 в карму.
Цель:…
ээээммм.э

ээээ…
Праздник, короче!
Я люблю веб-проекты!
Я всех люблю!
+ Вам вкарму
Мой квадрозаряд превратился в пентазаряд!
А ну каааак запуляю!

Информация

В рейтинге
4 728-й
Дата рождения
Зарегистрирован
Активность