Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - a@mail.dux.ru

Страницы: [1] 2 3 ... 7
1
Спасибо, но вот как при возврате юзера на страницу взять из урла имя сессии (точнее ее ID) (как вытащить из урла переменные - я понимаю)
Я не понимаю, как принудительно заставить скрипт работать с именем сессии которая пришла из урла, а не с той, которую он может открыть самостоятельно. (это не ошибка. То есть я понимаю, чего хочу.)


Еще раз на примере:
Вышел юзер со старницы page.php?PHPSESSID=gggg
Когда возвращается у него в урле по прежнему есть PHPSESSID=gggg

Мне нужно что бы скрипт работал с сессией с именем gggg

$HTTP_POST_VARS[\'PHPSESSID\'] - это понятно. А дальше как?
Спасибо

2
У меня проблема: хочу передавать имя сессии в урле.
когда кукисы отключены, тогда все ясно само через PHPSESSID поставится
но вот когда кукисы разрешены, вот тогда хочу что бы PHPSESSID все равно было в урле.

Объясню зачем: при гулянии по сайту у меня посетитель перебрасывается редиректом на другие страницы сайта и иногда его данные теряются. Вот потому и хочу передавать имя его сессии в url что бы при заходе (возвращении) юзера на страницу брать его данные из сессии имя которой взято из url

Спасибо.

3
У меня два сайта один основной другой - зеркало.
на зеркале собсвенно ничего нет кроме файлов с запросами к основному серверу.
Формы, заполняемые юзерами на зеркале посылаются через fsockopen

все бы хорошо, но вот когда сделал на основном сервере авторизацию юзеров по сессии, на зеркале юзера не могут авторизоваться (кто там регистрировался)

в запросе использовал

$request .= "Cookie: income=1\\r\\n";

не помогло

такое -
$request .= "Cookie: PHPSESSID=".$PHPSESSID."; c1=2\\r\\n";
тоже

я полагаю, что я должен где-то в заголовке ответа основного сервера найти ID сессии, выданной на основном сервере.
Но не понял, как это сделать и там ли вообще искать.
Подскажите плиз, что нибудь.

Вот весь запрос:

$request = "Host: $host\\r\\n";
$request .= "Expires: Thu, 01 Jan 1970 00:00:01 GMT\\r\\n";
$request .= "Accept-Language: ".$HTTP_ACCEPT_LANGUAGE."\\r\\n";
$request .= "Cache-Control: no-store, no-cache, must-revalidate\\r\\n";
$request .= "Pragma: no-cache\\r\\n";
$request .= "Cookie: PHPSESSID=".$PHPSESSID."; c1=2\\r\\n";
$request .= "Referer: ".$HTTP_REFERER."\\r\\n";
$request .= "User-Agent: ".$HTTP_USER_AGENT."\\r\\n";
$request .= "Client-ip: ".$REMOTE_ADDR."\\r\\n";
$request .= "FORWARDED_FOR: 10.10.10.10\\r\\n";

4
Мне надо посылать скрипром на сайт данные методом POST. (без моего прямого участия.)

использую сокет и все бы хорошо. так как все работает, пока не столкнулся с проблемой:

Надо послать еще и название формы
ну, как если бы форма посылалась из формы


5
Базы данных / установка posgresql
« : 16 Марта 2005, 03:20:15 »
а под винды есть postgresql ? подскажет кто? и вообще это лучше чем MySql для больших баз (много записей) я такое предложение видел у хостера rbc (в плане есть такая база данных)

6
Ну что перевелись богатыри на земле русской? никто мне помочь не может?

Тодая сам помог себе, но через задницу конечно. Кому интересно вот такая конструкция вышла

SELECT pupils.ID*(-1-status) as xxx,  pupils.ID, message, status, touserID, fromuserID, firstname
FROM pupils, mess
WHERE ( pupils.ID = touserID AND fromuserID =1 ) OR ( pupils.ID = fromuserID AND touserID =1 )
GROUP  BY xxx

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

Приходится их вычищать потом в WHILE



поясню с pupils.ID*(-1-status). правильнее это выглядит как pupils.ID*(-(1+status)) но меньше скобок мне больше нравится.
1+status - избавляюсь от нуля (status может быть либо 0 либо 1)
-(1+status) ну а минус, так что  xxx desc не делать. где то прочитал что любая доп сортировка здорово прибавляет нагрузки.


Но проблема актуальна и если кто может мне помочь - буду рад и признателен.
Заодно возмущен бездарностью MySQL. такие класные функции как unique и distinct не пашут
А с ними проблема решается моментально. А group by годится для примитивных задач. :(

8
у меня 3.3 с чемто. Но твой запрос, если его правильно написать, получается что два раза одно и тоже выбирает из общирной таблицы сообщений. тогда лучше сделать выборку два раза, может быть

9
Проблема с выбором уникальных полей, но сортированных по определенному принципу.
1. пробовал использовать distinct но он в MySQL не работает :(
2. сделал запрос с оператором group by. Но тут возникла другая проблема:
 
group by сортирует все по своему, не взирая на последующие в операторе order by параметры.


мне надо сначала отсортировать поля по mess.status desc а уж потом из выборки сделать group by (а получается наоборот)

Пожалуйста, посоветуйте что-нибудь. Запрос и таблицы - ниже

Select pupils.ID, message, status, touserID, fromuserID, firstname
From pupils, mess where

(pupils.ID=touserID and fromuserID=1)
or
(pupils.ID=fromuserID and touserID=1)


group by pupils.ID
order by  mess.status desc, mess.ID desc


Таблицы
pupils - люди
mess - сообщения, которые они пишут друг другу.

"1" - это pupils.ID=1. выборка сделана под него. то есть кому он написал и кто ему написал.

после выборки должны быть уникальные люди (без повторов)
и сообщения должны быть рассортированы по принципу: сначала новые (1) а потом прочитанные (0) . Но только по одному ПОСЛЕДНЕМУ сообщению.
Но если выполнить мой запрос, то получается не так (точнеее не всегда так как надо )

даже демп привожу, что бы была именна та ситуация что и у меня. (когда выдает неправильный запрос)


CREATE TABLE `mess` (
  `ID` int(11) NOT NULL auto_increment,
  `touserID` int(11) NOT NULL default \'0\',
  `fromuserID` int(11) NOT NULL default \'0\',
  `message` text NOT NULL,
  `status` tinyint(4) NOT NULL default \'1\',
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=7 ;

#
# Дамп данных таблицы `mess`
#

INSERT INTO `mess` VALUES (1, 1, 2, \'сообщ 2 к 1\', 0);
INSERT INTO `mess` VALUES (2, 2, 1, \'сообщ 1 к 2\', 0);
INSERT INTO `mess` VALUES (3, 1, 2, \'сообщ 2 к 1\', 1);
INSERT INTO `mess` VALUES (4, 2, 1, \'сообщ 1 к 2\', 1);
INSERT INTO `mess` VALUES (5, 1, 3, \'сообщ 3 к 1\', 0);
INSERT INTO `mess` VALUES (6, 1, 3, \'сообщ 3 к 1\', 1);

# --------------------------------------------------------

#
# Структура таблицы `pupils`
#

CREATE TABLE `pupils` (
  `ID` int(11) NOT NULL auto_increment,
  `firstname` varchar(30) NOT NULL default \'\',
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=4 ;

#
# Дамп данных таблицы `pupils`
#

INSERT INTO `pupils` VALUES (1, \'чел1\');
INSERT INTO `pupils` VALUES (2, \'чел2\');
INSERT INTO `pupils` VALUES (3, \'чел3\');
   



Прежде чем добавлять - изучил форум. нашел интересные решения. использовал.
В приведенных мною данных (когда мало) работает.

SELECT pupils.ID, MAX( status ) , message, touserID, fromuserID, firstname FROM pupils, mess WHERE ( pupils.ID = touserID AND fromuserID =1 ) OR ( pupils.ID = fromuserID AND touserID =1 ) GROUP BY pupils.ID ORDER BY mess.status DESC , mess.ID DESC

А по боевому, все ж НЕ так как надо.
Так что проблема актуальна. Прошу помощи.

10
ПодСкажите, пожалуйста, Может ли JS проверить доступен сайт или нет

Для чего мне это надо:
использую скрипт


(localhost - естественно для проверки.)

Но сайт (http://localhost/index.htm) может быть недоступен, и в этом случае, я хочу выдать на странице  сообщение- сайт временно недоступен. заходите позже

Возможно ли это? и если да, то как это сделать?
Спасибо

11
А чего кстати не за всех голосовать то можно? мне не удалось выполнить гражданский долг (как обещал) :(

12
Господа, простите, что отлучился. отвечу всем :)

AliMamed , я в английском не силен. пытался понять, чего же там такое, но не понял, каким боком указанная тобой страница относится к моему вопросу. Может просто я не понял. извини :(


FANTAzeRus, спасибо огромное за подробный ответ. Но это не совсем то, что я хотел. А чего хотел, того может и не сделать :)
А так , разбить массив а потом собрать - я тоже умею. Так пока и спасаюсь :)


ActiveX, ты такие вопросы задаешь :) я на них не знаю ответы.
Ну, вот просто форма создает массив и я хочу его сунуть в базу как есть, что бы не раскладывать потом, как советывал мне
FANTAzeRus (еще раз спасибо ему. хороший человек :)  проголосую даже за него :))

.. а просто вытащить из базы - вот тебе и массив. Может и нельзя так, скажите и тему закроем :(

13
Хорошая мысль, но хочется в базе данных :)

14
Не получается записать массив в базу данных или вывести из нее (MySQL). Не знаю, на каком шаге ошибка у меня.

код на пхп написан.













"") {

$SQLUpdate="update user set
massicq=\'$abc\'
Where ID=1
";
// формат massicq - blob

//тут коонект к бд и выполнение запроса. так что опускаю это;

//обновляет данные вроде нормально. но проверить то я их не могу.
// в моем phpmyadmin написано что в massicq - [BLOB]


теперь пытаюсь вывести данные
$SQLrequest="Select *  From user where ID=1";
//тут коонект к бд и выполнение запроса. так что опускаю это;

$massicq=mysql_result($result,0,"massicq");

//если тут же вывести $massicq echo $massicq - выведет - Array

}//END IF  ?>





//это я пытаюсь вывести данные из массива
//если вывести из полученного про формировании массива из формы,
//то все срабатывает
//$massicq=$abc;


$countmassiv=count($massicq);
   for ($i=0; $i<=$countmassiv; $i++){
      If($massicq[$i]<>"") {
         
         
         echo $massicq[$i];
         echo "
" ;
      } // end If($massiv[$i]<>"")
                    
   }// end for

 ?>

спасибо.

15
спасибо, хоть я и сам нашел как сделать. но все равно спасибо, тем, кто раньше выручал.
проблему решил разбив последнюю строку на части. и вывожу по частям:




если кто знает, как это можно решить покрасивее - буду рад услышать ваше мнение ;)

Страницы: [1] 2 3 ... 7