кодровка почты

levi-de

Новичок
кодровка почты

Здравствуйте!

Я принимаю почту протоколом IMAP и считываю тело сообщения командой imap_body

получаю массив

дальще в цикле сканирую массив на определённую букву. Как только буква найдена, начинает печатать все символы, пока цикл не встретит на своём пути пробел.

Проблема в том, что тело сообщения виглядит немного по-другому, чем в почтовом клиенте на хосте. То есть, другими словами, получаю много служебной информации. И поиск интересующего меня слова тоже отображаеться не совсем корректно


Речь идёт о гиперссылке. Есть ли в пхп возможность отобразить сообщение в формате хтмл? точнее в виде хтмл кода.. тогда можно будет ставить ограничение поиска по тегам хтмл, а ето значительно надёжнее


vot moj kod.

PHP:
$text = imap_body($mailbox, $a);

$erlauben = false;
for($i = 0; $i<strlen($text); $i++)
{
if($text[$i] == "h" && $text[$i+1] == "t" && $text[$i+2] == "t" && $text[$i+3] == "p")	
	{
	$erlauben = true;
	}
	if($erlauben == true)
	{
	print("$text[$i]");
	}

	if($erlauben == true)
	{
		if($text[$i+1] == " ")
		{
		$erlauben = false;
		echo"<hr />";
		break;
		}
		
	}
}

заранее спасибо
 

Гравицапа

elbirret elcno
Почитай про формат MIME
http://phpclub.ru/detail/article/mail#part_6
http://book.itep.ru/4/4/mime.htm
[m]imap_body[/m]
imap_body() will only return a verbatim copy of the message body. To extract single parts of a multipart MIME-encoded message you have to use imap_fetchstructure() to analyze its structure and imap_fetchbody() to extract a copy of a single body component.
http://ru.php.net/manual/en/ref.strings.php
http://www.pcre.ru/docs/php/
И ещё раз, что ты пытаешься сделать?
Да и можешь объяснить по строкам, как должен работать приведенный тобой кусок кода?
 

levi-de

Новичок
PHP:
$text = imap_body($mailbox, $a); // zagonjaju v telo pis'ma nomer $a v String

$erlauben = false; 
for($i = 0; $i<strlen($text); $i++) // prokruchivaju vse elementi massiva po ocheredi
{ 
if($text[$i] == "h" && $text[$i+1] == "t" && $text[$i+2] == "t" && $text[$i+3] == "p")  // ischu sovpadenie http v massive    
    { 
    $erlauben = true; // peremennaja erlaube (nem. razreschit') na true
    } 
    if($erlauben == true) 
    { 
    print("$text[$i]"); (pechataju, vse elementi massiva, esli dlja dannogo probega po cilku peremennaja erlauben == true
    } 

    if($erlauben == true) 
    { 
        if($text[$i+1] == " ") // kak tol'ko cikl na svojom puti vstrechaet probel, erlauben sadit'sja na false, sledovatel'no bol'sche ne pechataet'sja ni odnin simvol
        { 
        $erlauben = false; 
        echo"<hr />"; 
        break; // dosrochno pririvaju cikl
        } 
         
    } 
}
Mozhet, konechno, logika ne sovsem udachnaja, no rabotaet ))
 

Гравицапа

elbirret elcno
levi-de
Ты прочитал ссылки, приведённые мною?
Почему ты вот так выводишь
?
И ещё раз, что ты пытаешься сделать?
Вырезать ссылки из письма? Как-то выделить их или что? Зачем тебе это?
Mozhet, konechno, logika ne sovsem udachnaja, no rabotaet ))
Ссылку по строковым функциям смотрел?
А www.yandex.ru - это не ссылка?

P.S. Не надо называть переменные на немецком языке
 
Сверху