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 Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: трудности
Sveta
Отправлено: 31 Мая, 2011 - 03:29:52
Post Id


Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Май 2011  


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




Выделено в отдельную тему из темы "помогите реализовать задумку"
Здравствуйте, еще разик помогите пожалуйста.
Я пытаюсь разработать интернет-магазин. В каталоге есть товар, у которого может быть несколько комплектаций и несколько дополнительных опций. В браузере это выглядит так (см. изображение).
Код страницы
PHP:
скопировать код в буфер обмена
  1.  
  2. <form name="dobv" method="post" action="dobv.php">  
  3. <?PHP
  4. $link = mysql_connect("localhost", "root", "1111");
  5. if (!mysql_connect("localhost", "root", "1111"))
  6. die("Не могу подключиться к серверу MySQL");
  7. if (!mysql_select_db("santehnika", $link))
  8. die("Не могу найти БД santehnika");
  9. mysql_query ("SET NAMES cp1251");  
  10. /* составить запрос для вставки информации о клиенте в таблицу */
  11. $id = (int)$_GET['id'];
  12. $rSelect = mysql_query('
  13. SELECT   `imgv`.`id`,
  14.         `vanni`.`id_v` ,
  15.         `vanni`.`name_v` ,
  16.         `vanni`.`dlina_v`,
  17.         `vanni`.`shirina_v`,
  18.         `vanni`.`visota_v`,
  19.         `vanni`.`obyem_v`,
  20.         `vanni`.`forma_v`,
  21.         `vanni`.`tip_v`,
  22.         `vanni`.`firma_v` ,  
  23.         `vanni`.`strana_v` ,  
  24.         `vanni`.`opisanie_konf_v` ,  
  25.         `vanni`.`cena_v`
  26. FROM vanni
  27. INNER JOIN imgv
  28. ON `vanni`.`id_v` =  `imgv`.`tov_v`
  29. WHERE  `vanni`.`id_v` ='.$id);
  30. $rgData  = mysql_fetch_array($rSelect);
  31. if(!isset($rgData['id']))
  32. {
  33.    exit('Не найден1');
  34. }
  35. if ($rgData['cena_v']!=0){
  36.     if($rgData['visota_v']!=0){
  37. echo "<table><tr class='tb'><td> <table>
  38.                                <tr><td><b><font color=teal size=5px>".$rgData['name_v']." </font></b></td></tr>
  39.                                <tr><td><img class='of' src='image_v.php?id=".$rgData['id']." alt='' /></td></tr> </table></td>
  40.                    <td><table><tr><td><table class='tb'>
  41.                                                         <tr><td width=100px><b><font color=#4B4B4B>Длина, см:</font></b></td><td><font color=#4B4B4B>".$rgData['dlina_v']."</font></td></tr>
  42.                                                         <tr><td><b><font color=#4B4B4B>Ширина, см:</font></b></td><td><font color=#4B4B4B>".$rgData['shirina_v']."</font></td></tr>
  43.                                                         <tr><td><b><font color=#4B4B4B>Высота, см:</font></b></td><td><font color=#4B4B4B>".$rgData['visota_v']."</font></td></tr>
  44.                                                         <tr><td><b><font color=#4B4B4B>Объем, л:</font></b></td><td><font color=#4B4B4B>".$rgData['obyem_v']."</font></td></tr>
  45.                                                         <tr><td><b><font color=#4B4B4B>Форма:</font></b></td><td><font color=#4B4B4B>".$rgData['forma_v']."</font></td></tr>  
  46.                                                         <tr><td><b><font color=#4B4B4B>Тип:</font></b></td><td><font color=#4B4B4B>".$rgData['tip_v']."</font></td></tr>                                                                                                                                                                                                        
  47.                                                         <tr><td><b><font color=#4B4B4B>Фирма:</font></b></td><td><font color=#4B4B4B>".$rgData['firma_v']."</font></td></tr>
  48.                                                         <tr><td><b><font color=#4B4B4B>Страна:</font></b></td><td><font color=#4B4B4B>".$rgData['strana_v']."</font></td></tr>
  49.                                                         <tr><td><b><font color=#4B4B4B>Описание:</font></b></td><td><font color=#4B4B4B>".$rgData['opisanie_konf_v']."</font></td></tr>                                    
  50.                                                         <tr><td><b><font color=#4B4B4B> Цена:</font></b></td><td><b><font color=#B70707 size=6px>".$rgData['cena_v']." руб</b></font></td></tr>
  51.                    </table></td></tr><tr><td></td></tr> </table></td></tr></table>"; }
  52.                    
  53. else {echo "<table><tr class='tb'><td> <table>
  54.           <tr><td><b><font color=teal size=5px>".$rgData['name_v']." </font></b></td></tr>
  55.           <tr><td><img class='of' src='image_v.php?id=".$rgData['id']." alt='' /></td></tr> </table></td>
  56.           <td><table><tr><td><table class='tb'>
  57.                                                         <tr><td width=100px><b><font color=#4B4B4B>Длина, см:</font></b></td><td><font color=#4B4B4B>".$rgData['dlina_v']."</font></td></tr>
  58.                                                         <tr><td><b><font color=#4B4B4B>Ширина, см:</font></b></td><td><font color=#4B4B4B>".$rgData['shirina_v']."</font></td></tr>
  59.                                                         <tr><td><b><font color=#4B4B4B>Объем, л:</font></b></td><td><font color=#4B4B4B>".$rgData['obyem_v']."</font></td></tr>
  60.                                                         <tr><td><b><font color=#4B4B4B>Форма:</font></b></td><td><font color=#4B4B4B>".$rgData['forma_v']."</font></td></tr>  
  61.                                                         <tr><td><b><font color=#4B4B4B>Тип:</font></b></td><td><font color=#4B4B4B>".$rgData['tip_v']."</font></td></tr>                                                                                                                                                                                                        
  62.                                                         <tr><td><b><font color=#4B4B4B>Фирма:</font></b></td><td><font color=#4B4B4B>".$rgData['firma_v']."</font></td></tr>
  63.                                                         <tr><td><b><font color=#4B4B4B>Страна:</font></b></td><td><font color=#4B4B4B>".$rgData['strana_v']."</font></td></tr>
  64.                                                         <tr><td><b><font color=#4B4B4B>Описание:</font></b></td><td><font color=#4B4B4B>".$rgData['opisanie_konf_v']."</font></td></tr>                                    
  65.                                                         <tr><td><b><font color=#4B4B4B> Цена:</font></b></td><td><b><font color=#B70707 size=6px>".$rgData['cena_v']." руб</b></font></td></tr>   </table></td></tr><tr><td></td></tr>
  66.       </table></td></tr></table>"; }}  
  67. else{
  68.      if($rgData['visota_v']!=0){
  69. echo "<table><tr class='tb'><td> <table>
  70.                                <tr><td><b><font color=teal size=5px>".$rgData['name_v']." </font></b></td></tr>
  71.                                <tr><td><img class='of' src='image_v.php?id=".$rgData['id']." alt='' /></td></tr>
  72.                         </table> </td><td>
  73.                         <table><tr><td><table class='tb'>
  74.                                                         <tr><td width=100px><b><font color=#4B4B4B>Длина, см:</font></b></td><td><font color=#4B4B4B>".$rgData['dlina_v']."</font></td></tr>
  75.                                                         <tr><td><b><font color=#4B4B4B>Ширина, см:</font></b></td><td><font color=#4B4B4B>".$rgData['shirina_v']."</font></td></tr>
  76.                                                         <tr><td><b><font color=#4B4B4B>Высота, см:</font></b></td><td><font color=#4B4B4B>".$rgData['visota_v']."</font></td></tr>
  77.                                                         <tr><td><b><font color=#4B4B4B>Объем, л:</font></b></td><td><font color=#4B4B4B>".$rgData['obyem_v']."</font></td></tr>
  78.                                                         <tr><td><b><font color=#4B4B4B>Форма:</font></b></td><td><font color=#4B4B4B>".$rgData['forma_v']."</font></td></tr>  
  79.                                                         <tr><td><b><font color=#4B4B4B>Тип:</font></b></td><td><font color=#4B4B4B>".$rgData['tip_v']."</font></td></tr>                                                                                                                                                                                                        
  80.                                                         <tr><td><b><font color=#4B4B4B>Фирма:</font></b></td><td><font color=#4B4B4B>".$rgData['firma_v']."</font></td></tr>
  81.                                                         <tr><td><b><font color=#4B4B4B>Страна:</font></b></td><td><font color=#4B4B4B>".$rgData['strana_v']."</font></td></tr>
  82.                                                         <tr><td><b><font color=#4B4B4B>Описание:</font></b></td><td><font color=#4B4B4B>".$rgData['opisanie_konf_v']."</font></td></tr>                                    
  83.                                        </table></td></tr><tr><td></td></tr> </table></td></tr></table>"; }
  84. else {echo "<table><tr class='tb'><td> <table>
  85.                                <tr><td><b><font color=teal size=5px>".$rgData['name_v']." </font></b></td></tr>
  86.                                <tr><td><img class='of' src='image_v.php?id=".$rgData['id']." alt='' /></td></tr>
  87.                         </table> </td><td>
  88.                         <table><tr><td><table class='tb'>
  89.                                                         <tr><td width=100px><b><font color=#4B4B4B>Длина, см:</font></b></td><td><font color=#4B4B4B>".$rgData['dlina_v']."</font></td></tr>
  90.                                                         <tr><td><b><font color=#4B4B4B>Ширина, см:</font></b></td><td><font color=#4B4B4B>".$rgData['shirina_v']."</font></td></tr>
  91.                                                         <tr><td><b><font color=#4B4B4B>Объем, л:</font></b></td><td><font color=#4B4B4B>".$rgData['obyem_v']."</font></td></tr>
  92.                                                         <tr><td><b><font color=#4B4B4B>Форма:</font></b></td><td><font color=#4B4B4B>".$rgData['forma_v']."</font></td></tr>  
  93.                                                         <tr><td><b><font color=#4B4B4B>Тип:</font></b></td><td><font color=#4B4B4B>".$rgData['tip_v']."</font></td></tr>                                                                                                                                                                                                        
  94.                                                         <tr><td><b><font color=#4B4B4B>Фирма:</font></b></td><td><font color=#4B4B4B>".$rgData['firma_v']."</font></td></tr>
  95.                                                         <tr><td><b><font color=#4B4B4B>Страна:</font></b></td><td><font color=#4B4B4B>".$rgData['strana_v']."</font></td></tr>
  96.                                                         <tr><td><b><font color=#4B4B4B>Описание:</font></b></td><td><font color=#4B4B4B>".$rgData['opisanie_konf_v']."</font></td></tr>                                    
  97.        </table></td></tr><tr><td></td></tr> </table></td></tr></table>";}  
  98.  
  99. //show description or whatever you want
  100. $rSelect1 = mysql_query('
  101. SELECT  `komplektacija_v`.`name_kv` ,  `komplektacija_v`.`opisanie_kompl_kv` ,  `komplektacija_v`.`cena_kv`
  102. FROM komplektacija_v
  103. INNER JOIN vanni ON  `vanni`.`id_v` =  `komplektacija_v`.`tovar_kv`
  104. WHERE  `komplektacija_v`.`tovar_kv` ='.$id);
  105. echo "<b><font color=teal>Комплектация  ".$rgData['name_v']. ":</font></b>";
  106. echo "<table border= 2px width=100%>";
  107. echo "<tr><td><font color=#4B4B4B><b>Комплектация</b></font></td><td><font color=#4B4B4B><b>Описание</b></font></td><td><font color=#4B4B4B><b>Цена</b></font></td><td><font color=#4B4B4B><b>Выбор</b></font> </td></tr>";      
  108. while ($rgData1 = mysql_fetch_row($rSelect1))
  109. {
  110. if(!isset($rgData['id']))
  111. {
  112.    exit;
  113. }
  114. {foreach ($rgData1 as $field);
  115. echo "<tr><td><font color=#4B4B4B>".$rgData1[0]."</font></td>";
  116. echo "<td><font color=#4B4B4B>".$rgData1[1]."</font></td>";
  117. echo "<td><b><font color=#B70707>".$rgData1[2]."</font></b></td><td><font color=#4B4B4B>";?><input type=checkbox name=kompl [checked] >
  118. <?PHP "</font></td></tr>"; }}
  119. echo "</table>"; }
  120.  
  121.  
  122. $rSelect2 = mysql_query('
  123. SELECT  `do_v`.`name_dov` ,  
  124.        `do_v`.`cena_dov` ,  
  125.        `do_v`.`tovar_dov` ,  
  126.        `vanni`.`id_v` ,  
  127.        `vanni`.`do_vn`
  128. FROM do_v
  129. INNER JOIN vanni ON  `do_v`.`tovar_dov` =  `vanni`.`id_v`
  130. WHERE `do_v`.`tovar_dov`='.$id);
  131. if (!$result = $rSelect2)
  132. {
  133.     echo "<br>Не могу выполнить запрос<br>";
  134.     exit();
  135. }
  136. $rgData2  = mysql_fetch_array($rSelect2);
  137. if ($rgData2['do_vn']!=0){
  138. echo "<b><font color=teal>Дополнительные опции  ".$rgData['name_v']. ":</font></b>";
  139. echo "<table border= 2px width=100%>";
  140. echo "<tr><td><font color=#4B4B4B><b>Название</b></font></td><td><font color=#4B4B4B><b>Цена</b></font></td><td><font color=#4B4B4B><b>Выбор</b></font> </td></tr>";      
  141. if(!isset($rgData['id'])){exit;}
  142. echo "<tr><td><font color=#4B4B4B>".$rgData2[0]."</font></td>";
  143. echo "<td><b><font color=#B70707>".$rgData2[1]."</font></b></td><td>"?><input type="radio" name="dopv" [checked]>
  144. <?PHP "</td></tr>";}
  145. echo "</table>";
  146. ?>
  147. <input type="submit" name="Submit" value="Выбрать" >  
  148. </form>
  149.  

Вопрос: как можно выбрать конкретную комплектацию и доп. опцию?
Как сделать правильно? Растерялся
Прикреплено изображение (Нажмите для увеличения)
ris1.JPG


Отредактировано администратором: EuGen, 31 Мая, 2011 - 09:23:26
Новый вопрос - новая тема.
Не ленимся заключать код в соответствующие теги
 
 Top
svbPavel
Отправлено: 31 Мая, 2011 - 09:53:19
Post Id



Новичок


Покинул форум
Сообщений всего: 21
Дата рег-ции: Март 2011  
Откуда: Свободный


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




судя по скриншоту для начала стоит поменять:
-в выборе комплектации чекбоксы поменять на radio
-в выборе доп.опций наоборот, вместо radio поставить checkbox
 
 Top
Sveta
Отправлено: 31 Мая, 2011 - 10:35:01
Post Id


Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Май 2011  


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




да, с этим я попутала. Но проблема остается.
 
 Top
demot
Отправлено: 31 Мая, 2011 - 12:35:58
Post Id


Частый гость


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


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




Так а в чем собственно проблема? Не можете получить данные, кото отправляет форма, или как?
 
 Top
Sveta
Отправлено: 31 Мая, 2011 - 12:41:50
Post Id


Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Май 2011  


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




проблема в том что я совсем не знаю как сделать кнопочку "выбрать". Чтобы данная кнопочка записывала в определенную таблицу в базе то, что я выбрала с помощью checkbox и с помощью radio и чтоб в ту же таблицу была записана дата когда был сделан выбор
 
 Top
demot
Отправлено: 31 Мая, 2011 - 13:17:55
Post Id


Частый гость


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


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




CODE (html):
скопировать код в буфер обмена
  1. <form action="<обработчик>" method="post">
  2. <input type="radio" name="komplekt" value="Start" checked="checked"/>Start
  3. <input type="radio" name="komplekt" value="Start Clean"/>Start Clean
  4. <input type="radio" name="komplekt" value="Start Level"/>Start Level
  5. <input type="checkbox" name="massiv_opciy[]" value="opt1" />opt1
  6. <input type="checkbox" name="massiv_opciy[]" value="opt2" />opt2
  7. <input type="checkbox" name="massiv_opciy[]" value="opt3" />opt3
  8. <input type="submit" value="Отправить" />
  9. </form>

PHP:
скопировать код в буфер обмена
  1. $date = date("d.m.Y H:i");
  2. $sql = "INSERT INTO `tablica_zakazov` SET `date`='$date',";
  3. if (isset($_POST['komplekt'])){
  4.    $sql .= " `komplektaciya`=$_POST['komplekt']";
  5. }
  6. if (isset($_POST['massiv_opciy'])){
  7.    $opcii = $_POST['massiv_opciy'];
  8.    $sql .= ",`opcii`='";
  9.    foreach ($opcii as $val){
  10.        $sql .= "$val,";
  11.    }
  12. }
  13. $sql .= "';";
  14. mysql_querry($sql);


Т.е. должно получиться что-то вроде
INSERT INTO `tablica_zakazov` SET `date`='<текущая дата>',`komplektaciya`='<комплектация>',`opcii`='<выбранные опции>';
Это для примера, чтоб было немного ясно как получить данные выбранных позиций.
 
 Top
Sveta
Отправлено: 31 Мая, 2011 - 13:22:48
Post Id


Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Май 2011  


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




спасибо, попробую осуществить
 
 Top
Sveta
Отправлено: 01 Июня, 2011 - 08:51:28
Post Id


Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Май 2011  


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




подскажите, пожалуйста. Почему не передается значение поля "kol"
CODE (html):
скопировать код в буфер обмена
  1. <form name=d1 method="post">
  2. <input type=text name="kol" value="0"></form>
 
 Top
gsnzone
Отправлено: 01 Июня, 2011 - 18:05:16
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Май 2011  


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




здравствуйте. вопрос по теме. Есть таблица products, к ним должны идти параметры (таблица products_params), параметров до 5 штук, смотрите скрин.



То есть при запросе товара с номером 1331 выводятся и его доп. параметры, 5 штук, то есть появляется 5 выпадающих меню. Хотел осуществить с помощью explode() по символу |, но, как видно по скрину, каждый параметр может содержать еще и цены (no = нет цены), и у каждого параметра может быть сколько угодно опций (в принципе, можно было бы и ограничить, например, до 10, если от этого упростится реализация). Что я не так делаю? как сделать проще? подскажите, заранее большое спасибо!
Прикреплено изображение (Нажмите для увеличения)
001a633cca48.jpg

(Отредактировано автором: 01 Июня, 2011 - 18:10:56)

 
 Top
DlTA
Отправлено: 01 Июня, 2011 - 21:07:50
Post Id



Постоянный участник


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


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




Sveta пишет:
подскажите, пожалуйста. Почему не передается значение поля "kol"

возможно изза того что =0.
 
 Top
demot
Отправлено: 02 Июня, 2011 - 08:43:13
Post Id


Частый гость


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


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




Sveta пишет:
подскажите, пожалуйста. Почему не передается значение поля "kol"
CODE (html):
скопировать код в буфер обмена
  1. <form name=d1 method="post">
  2. <input type=text name="kol" value="0"></form>

Скорее всего потому, что нет обработчика формы, и нет кнопки отправки формы Улыбка
 
 Top
Sveta
Отправлено: 02 Июня, 2011 - 09:22:12
Post Id


Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Май 2011  


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




спасибо, свою нелепую ошибку я исправила Подмигивание
 
 Top
zypikov
Отправлено: 02 Июня, 2011 - 13:02:02
Post Id



Частый гость


Покинул форум
Сообщений всего: 219
Дата рег-ции: Нояб. 2010  


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




demot пишет:



Sveta пишет:
подскажите, пожалуйста. Почему не передается значение поля "kol"
CODE (html):
скопировать код в буфер обмена

1.
<form name=d1 method="post">
2.
<input type=text name="kol" value="0"></form>


Скорее всего потому, что нет обработчика формы, и нет кнопки отправки формы Улыбка

demot +1. Это же как надо "загрузиться", чтобы забыть самое главное Не понял


-----
У всего есть обратная сторона.
 
 Top
Sveta
Отправлено: 02 Июня, 2011 - 16:19:15
Post Id


Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Май 2011  


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




а то у тебя не было нелепых ошибок Язычок
 
 Top
Sveta
Отправлено: 02 Июня, 2011 - 21:42:02
Post Id


Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Май 2011  


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




Cannot add or update a child row: a foreign key constraint fails (`santehnika`.`zakazdom`, CONSTRAINT `zakazdom_ibfk_2` FOREIGN KEY (`tovar_zdom`) REFERENCES `do_m` (`id_dom`) ON DELETE CASCADE ON UPDATE CASCADE)
Что означает эта ошибка и как это исправить?
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTTP и PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB