Есть идея сделать список товара для заказа (товар, количество, цена ), заказ идет в БД и на почту. С этим проблем не было. Но, нужно сделать, что бы заказ отправлялся с логином авторизованного пользователя который отправил заказ. И в последующем этот пользователь видел в виде списка все свои отправленные заказы ранее. У меня получилось реализовать это частично и отдельными php файлами, а хотелось бы в виде компонента и на месте контента или модуля в окружении шаблона. Прикрепил к сообщению код, что бы было понятнее (dbconnect.php не писал и так всем думаю понятен). Помогите что чем сможет, советом или кодом. action.php Код: <?php session_start(); include ("dbconnect.php"); // получаем переменные из формы $balans_v_2=$_REQUEST['balans_v_2']; $balans_v_4=$_REQUEST['balans_v_4']; $balans_v_8=$_REQUEST['balans_v_8']; $balans_m_5=$_REQUEST['balans_m_5']; $balans_m_15=$_REQUEST['balans_m_15']; $action=$_REQUEST['action']; if ($action=="add") { // добавление данных в БД $sql="INSERT INTO tablica_bd(balans_v_2, balans_v_4, balans_v_8, balans_m_5, balans_m_15, dt) VALUES ('$balans_v_2', '$balans_v_4', '$balans_v_8', '$balans_m_5', NOW())"; $r=mysql_query ($sql); $address = 'mail@ya.ru'; /*Куда посылать?*/ $sub = "Новый заказ"; /*Какая будет тема письма*/ $date_today = date("d.m.Y"); /*дата*/ $today = date("H:i"); /*время*/ $message = "Билет на выставку"."\n"."\n"."\n". "Balans (Ведро 2кг): ".$balans_v_2."\n". "Balans (Ведро 4кг): ".$balans_v_4."\n". "Balans (Ведро 8кг): ".$balans_v_8."\n". "Balans (Мешок 5кг): ".$balans_m_5."\n". "Balans (Мешок 15кг): ".$balans_m_15."\n". "Дата: ".$date_today." - ".$today; /*конец блока*/ $verify = mail($address, $sub, $message, "Content-type:text/plain; charset = windows-1251"); /*Посылаем гонца, через запятую указываем адрес, тему, само сообщение, кодировку*/ } session_destroy(); ?> zakazat.php Код: <?php session_start(); session_destroy(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <title>Заказать</title> <meta name="keywords" content=""/> <meta name="description" content=""/> </head> <body> <!-- ========================================================================= --> <script type="text/javascript"> function text (str) { return /[0-9_;~?=+<|>]/g.test(str); } function mail (str) { return /^[A-Za-z0-9-_\.]+@[A-Za-z0-9-_\.]+.[A-Za-z]{2,3}$/.test(str); } function numeric (str) { return /^[0-9-\+\(\)\s]+z/.test(str + "z"); } function checkForm () { var title; var elem; var dutyField = "Не заполнено поле "; var wrongField = "Неверное значение поля"; var wrongHelp = " (Поле заполнять цифрами)"; var check = true; function checkError (field, str) { document.getElementById("alert").innerHTML = str; document.forms.myForm.field.focus(); check = false; } document.getElementById("alert").innerHTML = ""; if (check) { title = ' "Balans (Ведро 2кг)"'; elem = document.myForm.balans_v_2.value; if (!numeric(elem)) checkError('balans_v_2', wrongField + title + wrongHelp); } if (check) { title = ' "Balans (Ведро 4кг)"'; elem = document.myForm.balans_v_4.value; if (!numeric(elem)) checkError('balans_v_4', wrongField + title + wrongHelp); } if (check) { title = ' "Balans (Ведро 8кг)"'; elem = document.myForm.balans_v_8.value; if (!numeric(elem)) checkError('balans_v_8', wrongField + title + wrongHelp); } if (check) { title = ' "Balans (Мешок 5кг)"'; elem = document.myForm.balans_m_5.value; if (!numeric(elem)) checkError('balans_m_5', wrongField + title + wrongHelp); } if (check) { title = ' "Balans (Мешок 15кг)"'; elem = document.myForm.balans_m_15.value; if (!numeric(elem)) checkError('balans_m_15', wrongField + title + wrongHelp); } if (check) { document.myForm.submit(); } } </script> <form name="myForm" action="action.php" method="post"> <input type="hidden" name="action" value="add"> <!-- поля формы --> <table width="650" border="0" cellpadding="5" cellspacing="0"> <tr bgcolor="#ebebeb"> <td colspan="3" align="center" valign="middle"><strong>Balans</strong></td> </tr> <tr > <td width="310" align="left" valign="middle">Balans (Ведро 2кг)</td> <td width="51" align="left" valign="middle"><input name="balans_v_2" style="width: 50px;" value="0" onblur="if(this.value=='') this.value='0';" onfocus="if(this.value=='0') this.value='';"></td> <td width="149" align="left" valign="middle" > <span style="color:#974590;">200.00 руб.</span></td> </tr> <tr bgcolor="#f0f0f0"> <td width="310" align="left" valign="middle">Balans (Ведро 4кг)</td> <td width="51" align="left" valign="middle"><input name="balans_v_4" style="width: 50px;" value="0" onblur="if(this.value=='') this.value='0';" onfocus="if(this.value=='0') this.value='';"></td> <td width="149" align="left" valign="middle"> <span style="color:#974590;">380.00 руб.</span></td> </tr> <tr> <td width="310" align="left" valign="middle">Balans (Ведро 8кг)</td> <td width="51" align="left" valign="middle"><input name="balans_v_8" style="width: 50px;" value="0" onblur="if(this.value=='') this.value='0';" onfocus="if(this.value=='0') this.value='';"></td> <td width="149" align="left" valign="middle"> <span style="color:#974590;">725.00 руб.</span></td> </tr> <tr bgcolor="#f0f0f0"> <td width="310" align="left" valign="middle">Balans (Мешок 5кг)</td> <td width="51" align="left" valign="middle"><input name="balans_m_5" style="width: 50px;" value="0" onblur="if(this.value=='') this.value='0';" onfocus="if(this.value=='0') this.value='';"></td> <td width="149" align="left" valign="middle"> <span style="color:#974590;">420.00 руб.</span></td> </tr> <tr> <td width="310" align="left" valign="middle">Balans (Мешок 15кг)</td> <td width="51" align="left" valign="middle"><input name="balans_m_15" style="width: 50px;" value="0" onblur="if(this.value=='') this.value='0';" onfocus="if(this.value=='0') this.value='';"></td> <td width="149" align="left" valign="middle"> <span style="color:#974590;">1210.00 руб.</span></td> </tr> <!-------------------------------------> <tr align="left"> <td colspan="3" align="center" valign="top"><p align="center" id="alert" style="color: #7a3e6e"> <span style="color: #7a3e6e;font-size: 14px;"> Впишите в поля нужное количество</span></p></td> </tr> 222 <tr> <td colspan="3" align="center" valign="top" ><input type="button" value="отправить анкету" onClick="checkForm()"></td> </tr> </table> </form> </body> </html> На всякий пожарный: Joomla!: 1.5.22 Stable 04-November-2010 18:00 GMT Платформа: FreeBSD Версия PHP: 5.3.6 Версия MySQL: 5.5.14
А всякие уже готовые штуки наподобие virtuemart'а, где все уже есть и надо только выкинуть лишнее, вас не устраивают?