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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Возможно ли запихнуть цикл в переменную или альтернативный способ?
 
 автор: scva   (22.12.2010 в 18:01)   письмо автору
 
 

Вкратце, если существует $_FILE
то отправляем письмо с вложением, иначе отправлем просто текстовое письмо.

Данный код отправляет только один файл , а если буду отправлять к примеру 10 файлов
куда запихнуть цикл и как его прикуртить к $code_file



if(isset($_FILES['file']['name'])&&$_FILES['file']['size']>0 &&$_FILES['file']['error']==0)
{
$header.="Content-Type: multipart/mixed; boundary=\"----------A4D921C2D10D7DB\"\r\n";
$file=$_FILES['file']['name'];
$fp = fopen($file, "rb");
$code_file = chunk_split(base64_encode(fread($fp, filesize($file))));
fclose($fp);

$text="------------A4D921C2D10D7DB
Content-Type: text/plain; charset=windows-1251
Content-Transfer-Encoding: 8bit

$_POST[message]

------------A4D921C2D10D7DB
Content-Type: application/octet-stream; name=\"$file\"
Content-transfer-encoding: base64
Content-Disposition: attachment; filename=\"$file\"

".$code_file."
------------A4D921C2D10D7DB--
";
}
else 
{
    $header.="Content-Type: text/plain; charset=windows-1251\r\n";
    $header.="Content-Transfer-Encoding: 8bit\r\n";
    $text = $_POST['message'];
}


Обязательно должен с каждым файлом повотряться заголовок


------------A4D921C2D10D7DB
Content-Type: application/octet-stream; name=\"$file\"
Content-transfer-encoding: base64
Content-Disposition: attachment; filename=\"$file\"

  Ответить  
 
 автор: deimand   (22.12.2010 в 19:37)   письмо автору
 
   для: scva   (22.12.2010 в 18:01)
 


 for ($i = 0; $i < count($_FILES['file']['name']); $i++)
 {
   if ($_FILES['file']['error'][$i] == 0)
   {

  Ответить  
 
 автор: scva   (22.12.2010 в 19:56)   письмо автору
 
   для: deimand   (22.12.2010 в 19:37)
 

это я знаю, меня интересует как цикл в переменную запихнуть

  Ответить  
 
 автор: Trianon   (22.12.2010 в 20:04)   письмо автору
 
   для: scva   (22.12.2010 в 19:56)
 

попробуйте узкой стороной

  Ответить  
 
 автор: sim5   (22.12.2010 в 20:21)   письмо автору
 
   для: Trianon   (22.12.2010 в 20:04)
 

А у него есть еще и узкая сторона? :)

  Ответить  
 
 автор: neadekvat   (22.12.2010 в 20:26)   письмо автору
 
   для: sim5   (22.12.2010 в 20:21)
 

Ну так, надо же хоть как-нибудь впихнуть переменную.

Кстати, я так и не понял, какую именно переменную.

  Ответить  
 
 автор: scva   (22.12.2010 в 20:33)   письмо автору
 
   для: neadekvat   (22.12.2010 в 20:26)
 

Типа такого

if(isset($_FILES['file']['name'])&&$_FILES['file']['size']>0 &&$_FILES['file']['error']==0)
{
$header.="Content-Type: multipart/mixed; boundary=\"----------A4D921C2D10D7DB\"\r\n"
for ($i=1;$i<=count($_FILES['file']['name']))
{
$file[$i]=$_FILES['file']['name'][$i];
$fp[$i] = fopen($file[$i], "rb");
$code_file = chunk_split(base64_encode(fread($fp[$i], filesize($file[$i]))));
fclose($fp[$i]);

$files = "Content-Type: application/octet-stream; name=\"$file\"
Content-transfer-encoding: base64
Content-Disposition: attachment; filename=\"$file\"

.$code_file[$i]";
}

$text="------------A4D921C2D10D7DB
Content-Type: text/plain; charset=windows-1251
Content-Transfer-Encoding: 8bit

$_POST[message]

/**************** Вот сюда надо поместить, то что вцикле for ******************/

------------A4D921C2D10D7DB--
";
}
else
{
$header.="Content-Type: text/plain; charset=windows-1251\r\n";
$header.="Content-Transfer-Encoding: 8bit\r\n";
$text = $_POST['message'];
}

  Ответить  
 
 автор: Trianon   (22.12.2010 в 20:41)   письмо автору
 
   для: neadekvat   (22.12.2010 в 20:26)
 

Вы всё перепутали, коллега. Впихнуть надо цикл. В переменную.
Да, был неправ. Пихать, следует всё же широкой стороной, поскольку у Sim5 к широкой стороне возражений не появилось, и опять же, после широкой стороны без особых проблем пролезет всё остальное.

  Ответить  
 
 автор: neadekvat   (22.12.2010 в 20:44)   письмо автору
 
   для: Trianon   (22.12.2010 в 20:41)
 

> Впихнуть надо цикл. В переменную.
Оу.. о.О

  Ответить  
 
 автор: scva   (22.12.2010 в 20:54)   письмо автору
 
   для: neadekvat   (22.12.2010 в 20:44)
 

прочитайте название темы, "альтернативный способ"
и нехуй здесь к словам придераться.

впихнуть - присвоить
итп.

филологи что ли, или программисты все же, или я форумом ошибся?

  Ответить  
 
 автор: Trianon   (22.12.2010 в 21:24)   письмо автору
 
   для: scva   (22.12.2010 в 20:54)
 

Переменной можно присвоить значение.
Цикл можно исполнить, прервать, продолжить.
Что можно впихнуть, я, пожалуй, рассказывать не буду.

И потрудитесь формулировать свой поток сознания перед тем, как вываливать его на форум.
А что здесь делать и чего не делать, мы как-нибудь решим и сами.

  Ответить  
 
 автор: neadekvat   (22.12.2010 в 21:32)   письмо автору
 
   для: scva   (22.12.2010 в 20:54)
 

Каждый должен быть немножко филологом, ибо в пословице "встречают по одежке" одежкой является речь, а не модные джинсы.
А люди, которые таки встречают по модным джинсам, не достойны того, чтобы производить на них впечатление.

  Ответить  
 
 автор: ride   (22.12.2010 в 21:35)   письмо автору
 
   для: scva   (22.12.2010 в 20:54)
 

нельзя впихнуть невпихуемое

  Ответить  
 
 автор: neadekvat   (22.12.2010 в 21:45)   письмо автору
 
   для: ride   (22.12.2010 в 21:35)
 

(с) К. Прутков с правкой на пошлое время.

  Ответить  
 
 автор: ride   (22.12.2010 в 21:50)   письмо автору
 
   для: neadekvat   (22.12.2010 в 21:45)
 

я это впервые услышал от Трахтенберга
upd
возможно, перетупал

  Ответить  
 
 автор: neadekvat   (22.12.2010 в 22:01)   письмо автору
 
   для: ride   (22.12.2010 в 21:50)
 

В оригинале - "Нельзя объять необъятное".

  Ответить  
 
 автор: Николай2357   (23.12.2010 в 01:04)   письмо автору
 
   для: neadekvat   (22.12.2010 в 22:01)
 

Есть еще куча интерпретаций его же...
Плюнь тому в глаза, кто скажет, что можно впихнуть цикл в переменную объять необъятное ))

  Ответить  
 
 автор: neadekvat   (23.12.2010 в 01:06)   письмо автору
 
   для: Николай2357   (23.12.2010 в 01:04)
 

А в оригинале, кстати, "Никто не обнимет необъятного.", судя по Википедии. Так что я соврал и тоже привел лишь один из вариантов :)

  Ответить  
 
 автор: Николай2357   (23.12.2010 в 01:14)   письмо автору
 
   для: scva   (22.12.2010 в 20:54)
 

По теме, вот тут есть класс, если метод attacheFile() вызвать 10 раз, будет 10 вложений.

  Ответить  
 
 автор: sim5   (23.12.2010 в 09:37)   письмо автору
 
   для: Николай2357   (23.12.2010 в 01:14)
 

Зачем десять раз, ведь в почтовое отправление можно поместить массив данных.

  Ответить  
Rambler's Top100
вверх

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