Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не вставляется переменная в форму отправки письма...

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
some man
Отправлено: 09 Октября, 2014 - 03:07:45
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Окт. 2014  


Помог: 0 раз(а)




прошу ногами не пинать и громко не смеятся, знания в php и js очень ограничены но я учусь )))

Итак есть корзина http://simplecartjs[dot]org . Я так и не смог разобраться как ее данные включать в форму отправки письма.

Форму использую следующую

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. // инициализируем сессию
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10. // выводим сообщения
  11. echo $er;
  12. // форма  
  13. echo "
  14.     <form name='form1' method='post' action='http://ХХХ.ru/mail2.php'>
  15.              <input name='session_id' type='hidden' value=".session_id().">
  16.         Ваше имя:<br>
  17.              <input type='text' name='name' id='textfield' maxlength='135'>
  18.              <br>
  19.                 Телефон для связи:<br>
  20.              <input type='text' name='tel' id='textfield' maxlength='135'>
  21.              <br>
  22.                 Удобное время и дата:<br>
  23.              <input  type='text' name='dat' id='textfield' maxlength='135'>
  24.              <br>
  25.                                           <br>
  26.         Коментарии, вопросы, пожелания:<br>
  27.              <textarea name='message_text' cols='160' rows='15' </textarea><br><br>
  28.              <input   type='submit' name='button' id='button' value='Отправить'>
  29.        </form>
  30.    ";
  31.        
  32.        
  33.        
  34.        
  35.  
  36. ?>
  37.  



Обработчик.

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. <?PHP
  4.  
  5. $url="http://ХХХ.ru/3.php";
  6. $ch = curl_init($url);
  7.  
  8.  
  9.   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);   // возвращает веб-страницу
  10.   curl_setopt($ch, CURLOPT_HEADER, 0);           // не возвращает заголовки
  11.   curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);   // переходит по редиректам
  12.   curl_setopt($ch, CURLOPT_ENCODING, "");        // обрабатывает все кодировки
  13.   curl_setopt($ch, CURLOPT_USERAGENT, $uagent);  // useragent
  14.   curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 120); // таймаут соединения
  15.   curl_setopt($ch, CURLOPT_TIMEOUT, 120);        // таймаут ответа
  16.   curl_setopt($ch, CURLOPT_MAXREDIRS, 10);       // останавливаться после 10-ого редиректа (не много ли!?)
  17.  
  18. //echo curl_exec($ch);
  19. //echo curl_exec($ch);
  20. $a = curl_exec($ch);
  21. //echo $a ;
  22.  
  23.     // Обработка полей формы
  24.     $message_text = htmlspecialchars(trim($_POST['message_text']));
  25.     $name = htmlspecialchars(trim($_POST['name']));
  26.         $tel = htmlspecialchars(trim($_POST['tel']));
  27.         $dat = htmlspecialchars(trim($_POST['dat']));
  28.        
  29.     // Проверяем длину сообщения, она не должна превышать $len знаков
  30.     $len = 20000;
  31.     if(strlen($message_text) > $len)
  32.     {
  33.          exit("Ошибка. Сообщение не должно превышать ".$len. " знаков. ");
  34.    }
  35.      
  36.     // здесь надо вставить email куда отправлять сообщение
  37.     $to = "ХХХХ@ХХХ.ru";
  38.     $subject="Заказ ".$name;
  39.      
  40.     // конвертируем из windows-1251 в koi8-r
  41.       //$subject = convert_cyr_string($subject,'w','k');
  42.      
  43.     // это само письмо
  44.     $message ="<html>
  45.               <head></head>
  46.               <body>
  47.               Письмо отправлено - <font color='red'>".date("d.m.Y H:i:s"). "</font><br>
  48.                            От - <b>". $name." </b><br>
  49.                            Телефон - <b>". $tel." </b><br>
  50.                            Желаемое время и дата - <b>". $dat." </b><br>
  51.                            Желаемое время и дата - <b>".$a." </b><br>
  52.              <h3>Комментарий:</h3>". $message_text."
  53.                          
  54.               </body>
  55.               </html>
  56.               ";
  57.     // конвертируем из windows-1251 в koi8-r            
  58.    //$message = convert_cyr_string($message,'w','k');
  59.     // заголовки письма
  60.    $headers = "Content-Type: text/html";
  61.     // от кого письмо
  62.     //$headers .= "From: server <LPHP.RU>\r\n\r\n";
  63.     if(mail($to,$subject,$message,$headers))
  64.     {
  65.       echo "<h1>Заказ отправлен, мы свяжемся с вами в ближайшее время.</h1>";    
  66.     }
  67.     else
  68.     {
  69.       echo "Ошибка. Письмо не отправлено.";    
  70.     }
  71.         //echo $a ;
  72.   curl_close($ch);
  73. echo $name ;
  74. ?>
  75.  
  76.  


в обработчике видно что я пытался через cURL подцепить данные корзины создав отдельную для этого страницу. Но, в письме ничего не приходит - пустое поле, однако в обработчике показывает echo $a ; содержимое корзины.

Пробовал уже выводить корзину на 1ю страницу (т.к. корзиза выводится js конструкцией <div class="simpleCart_items"></div>) с нее парсить курлом на 2ю и выводить echo. Парсить уже оттуда опять же cURL и вставлять в обработчик.

Не получается через echo все есть - как только отправляешь переменную $a в обработчик данные корзины исчезают. Пробовал помимо корзины отправить например число. через echo выводится корзина и число, а в письме только число.

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

В общем хелп надо передать данные корзины в обработчик + данные формы. Однако Однако Однако

(Отредактировано автором: 09 Октября, 2014 - 03:11:31)

 
 Top
kotyara1979
Отправлено: 09 Октября, 2014 - 04:20:13
Post Id


Частый гость


Покинул форум
Сообщений всего: 247
Дата рег-ции: Окт. 2012  


Помог: 7 раз(а)




Вообще то, в документации к simplecartjs написано использовать вместе с Prototype (фреймворк). Посмотри https://ru.wikipedia.org/wiki/Prototype_(%D1%84%D1%80%D0%B5%D0%B9%D0%BC%D0%B2%D0%BE%D1%80%D0%BA)

Собственно, curl здесь не поможет, ему просто нечего взять.
Организовывать сбор данных нужно через Prototype или просто js, а потом отправлять через ajax.


-----
Сделать можно все. Главное одеть каску.
 
 Top
some man
Отправлено: 09 Октября, 2014 - 12:46:44
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Окт. 2014  


Помог: 0 раз(а)




kotyara1979 пишет:
Вообще то, в документации к simplecartjs написано использовать вместе с Prototype (фреймворк). Посмотри https://ru.wikipedia.org/wiki/Prototype_(%D1%84%D1%80%D0%B5%D0%B9%D0%BC%D0%B2%D0%BE%D1%80%D0%BA)

Собственно, curl здесь не поможет, ему просто нечего взять.
Организовывать сбор данных нужно через Prototype или просто js, а потом отправлять через ajax.


А где документацию на него найти хорошую? Закатив глазки
(Добавление)
Прототип не подходит... при его подключении перестает работать корзина...
 
 Top
kotyara1979
Отправлено: 09 Октября, 2014 - 17:51:53
Post Id


Частый гость


Покинул форум
Сообщений всего: 247
Дата рег-ции: Окт. 2012  


Помог: 7 раз(а)




some man пишет:
Прототип не подходит... при его подключении перестает работать корзина...


jquery используй или просто js.

Сайтов с доками на любой вкус.


-----
Сделать можно все. Главное одеть каску.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB