Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Ошибка SMTP

Сообщения:  [1-10]    [11-20]  [21-22] 

 
 автор: Axxil   (29.03.2006 в 17:43)   письмо автору
 
   для: Trianon   (29.03.2006 в 17:35)
 

Javascript нету точно, только html возможен

   
 
 автор: Trianon   (29.03.2006 в 17:35)   письмо автору
 
   для: Axxil   (29.03.2006 в 17:16)
 

Мудрёно, конечно. Может, правда, регулярным выражением можно решить...

Не так. Через 1000 символов непрерывающейся строки от последнего LF назад ищем пробел, который бы не оказался в значении атрибута тега. Впрочем, если там javascript - будет еще сложнее.

   
 
 автор: Axxil   (29.03.2006 в 17:16)   письмо автору
 
   для: Trianon   (29.03.2006 в 17:08)
 

Чё-то как-то мудрёно получается...
Вот кстати неплохая задачка для раздела задачи :)
порезать текст на части по пробелам через заданные промежутки символов.
Т.е. через каждые например 900 символов ищем предыдущий пробел и заменяем его на перевод строки.

   
 
 автор: Trianon   (29.03.2006 в 17:08)   письмо автору
 
   для: Axxil   (29.03.2006 в 17:02)
 

Я имел в виду - поискать пробел и по пробелу порезать.
Перевод строки влияет в той же мере, что и пробел.
Конечно, если распилить по пробелу каким образом текстовое значение атрибута какого-нибудь тега - ничего хорошего не выйдет.
Но резать грубо по 1000 позиции - еще хуже. Можно порезать имя тега, имя атрибута, значение. Так будет плохо почти наверняка.

   
 
 автор: Axxil   (29.03.2006 в 17:02)   письмо автору
 
   для: Trianon   (29.03.2006 в 16:50)
 

Сначала тоже хотел, но там возможен html код. А пробел в ненужном месте может порушить его, а перевод строки вроде как на html не влияет.

   
 
 автор: Trianon   (29.03.2006 в 16:50)   письмо автору
 
   для: Axxil   (29.03.2006 в 16:24)
 

Так злобно - прям по живому?
Хотя б пробел чтоли какой нашли....

   
 
 автор: Axxil   (29.03.2006 в 16:24)   письмо автору
 
   для: Trianon   (29.03.2006 в 15:02)
 

Всё! Алилуйа. так и есть. проблему решает строчка:

$message = chunk_split($message,1000);

Trianon спасибо огромное за терпение и естественно за помощь.

   
 
 автор: Trianon   (29.03.2006 в 15:02)   письмо автору
 
   для: Axxil   (29.03.2006 в 14:52)
 

Не длина письма, а длина любой строки письма. Возможно, что длина этой строки - 1153 (или около того) символа. Соответственно, когда её режешь с 154 позиции, длинная строка разбивается на две строки, каждая из которых короче 1000 символов.
Возможно, конкретное ограничение - вовсе не тысяча, а совсем другое. Тысяча - это декларация по RFC-821.

   
 
 автор: Axxil   (29.03.2006 в 14:52)   письмо автору
 
   для: Trianon   (29.03.2006 в 14:42)
 

Что за почтовые системы?
Вряд ли тут с длиной связано, потому что проходят гораздо более объёмные письма
Сделал так:

  $frag = substr($body,150,5);
  $f = count_chars($frag);
  echo "<pre>";
  print_r($f);

получил:

[32] -2
[111]-1
[114]-1
[116]-1

Т.е. нулевыми символами даже и не пахнет...

Всё, тупик...

   
 
 автор: Trianon   (29.03.2006 в 14:42)   письмо автору
 
   для: Trianon   (29.03.2006 в 14:26)
 

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

   

Сообщения:  [1-10]    [11-20]  [21-22] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования