Подскажите как прочитать текстовую строку в поле текст (input type=text) рл частям ?

Kosha1981

Guest
Подскажите как прочитать текстовую строку в поле текст (input type=text) рл частям ?

Учавствуют 2 скрипта ;
В скрипте input.php (для ввода текста) есть форма
<form name="input" action="send.php" method="post" onSubmit="">
<input type=text size=90 maxlength=1024 name="msg_text">
</form>

В скрипте users_online.php (выводит список чатовцев) следующий код :

PHP:
include "Functions.php";
include "refresh.php";
<html>
<body leftmargin=15 topmargin=10 marginwidth=2 marginheight=2>
PHP:
connect();
$result = mysql_query("SELECT users.login FROM online, users WHERE online.id=users.id ORDER BY login");
for($i=0; $i<mysql_num_rows($result); $i++){
$login = mysql_result($result, $i, "login");
echo "<div align=left><IMG src='/images/private.gif' style='cursor: hand;' onclick=parent.AddPrivate('".$login."')> <a style='cursor: hand;' onclick=parent.AddTo('".$login."')><b>&nbsp;".$login."&nbsp;</b></a><div>";
};
disconnect();
</body>
</html>

при клике на чатовца в строке ввода текста (скрипт input.php ) появляется для Login (где Login имя чатовца , а для характеризует тип сообщения) , а если на стрелку рядом с чатовцем (рисунок private.gif в users_online.php) появляется
приват Login (где Login имя чатовца , а приват характеризует тип сообщения) - задача в том как расшифровать при отправке сообщения эти : для (значит тип сообщения 1), приват (значит тип сообщения 2) , Login (значит сообщение адресованно чатовцу с ником Login) ...
Вопрос можно это реализовать или нет и если да то подскажите как ?
 

Фанат

oncle terrible
Команда форума
если убрать всю эту мототень, которую ты наплел от того, что не умеешь абстрагировать и разделять задачи, проблема твоя сводится к тому, что мы имеем СТРОКУ, которая может принимать различные значения
Ник
или
приват Ник
и хотим их различать?
 

Kosha1981

Guest
Да , но после них еще идет текст и его тоже нужно отделить , и загнать в другую переменную ... вопрос был сформулирован проще но на другом форуме его не поняли , а в таком виде вроде до них он дошел , только вот ответить там не смогли :(
 

Фанат

oncle terrible
Команда форума
Вообще-то, я - честно - не представляю, как можно садиться писать чат, не зная даже приблизительноосновных операций работы со строками.
[m]strings[/m] - вот тебе глава из мана, самая главная.
Читай, ищи подходящие функции и смотри примеры.
 

Kosha1981

Guest
Спасибо - посмотрю , просто раньше кроме функции str_replace ничего не требовалось ...
 

Фанат

oncle terrible
Команда форума
вообще, если подумать - то пхп работает именно с текстом.
получает, обрабатывает и выдает в браузер.
Поэтому функции работы со строками в нем - основные.
И уж такие операции, как найти подстроку, вырезать подстроку, разбить строку на части - это основа основ.
 

Kosha1981

Guest
Уже смотрю и пытаюсь вникнуть ...

-~{}~ 17.10.04 23:46:

Фанат

Вроде нашел функцию , которая в данном случае подходит , но она вроде работает с явно заданными строками ... у меня к примеру будущие переменные в строке (то есть сам текст) разделяются пробелом , как в этом случае мне быть :
PHP:
$str = "type=$msg_type& &login=$login& &text=$msg_text";
parse_str($str);
?

-~{}~ 18.10.04 00:02:

Ничего не получилось .... может я не правильно работу этой функции понял ?
 

Фанат

oncle terrible
Команда форума
она тебе вообще не нужна.

Тебе сначала нужна не функция, а алгоритм.
Ты должен сначала в голове у себя составить програму - как ты будешь эту строку разбирать.
Вот скажи - как ты бы на месте программы узнал бы, что первое слово - приват?
 

Kosha1981

Guest
Фанат

Уже нашел другую функцию и понял , как она работает ... Вы знакомы с функцией explode - синтаксис такой :

explode ( раделитель , строка , строка[лимит]) , а если как в мануале , то explode ( string separator, string string [, int limit])
только вот у меня почему-то с лимитом напряг , как только включаю его в код у меня вся строка читается в одну переменную :(
 

Фанат

oncle terrible
Команда форума
Я знаком со всеми функциями.
Про лимит - читай. ты его неправильно используешь.
Документация на то и дана, чтобы ее читать.
 

Kosha1981

Guest
Фанат

Да там ничего онем не сказано - посмотрел я ... там есть пример на английском , но я в нем ничего не понял , да и лимит там false , то есть отключен ... Напишите как правильно его использовать - потому что в тексте ведь тоже встречаются пробелы и не хотелось бы чтобы они воспринимались , как что-то отличное от переменной $msg_text .
 

Фанат

oncle terrible
Команда форума
Ты кому рассказываешь, что там ничего про лимит не сказано?
МНЕ? Который 5 минут назад специально прочитал описание этой функции?
Давай-давай, не ленись.
Не все на иждивении у мамки с папкой сидеть.
учись работать самостоятельно.
С первого раза не понял - прочитай еще два.
Вперед
 

Kosha1981

Guest
Фанат

Огромное спасибо - вы как всегда были правы , а я не внимательно прочитал мануал !
 
Сверху