PHP.SU

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

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

> Найдено сообщений: 2
Нордик Отправлено: 17 Июня, 2018 - 13:39:21 • Тема: Добавление всех товаров из корзины • Форум: Вопросы новичков

Ответов: 2
Просмотров: 224
Как сделать чтобы все записи добавлялись из корзины в бд? А то добавляется только последняя. Запись добавляется в бд. Надо чтобы на каждый товар была новая запись, кто шарит помогите пожалуйста...
PHP:
скопировать код в буфер обмена
  1. <h2 align="center">Оформление заказа</h2>
  2.  
  3. <?
  4. if($_SESSION['cart'] && !isset($_POST['order']))
  5. {
  6. ?>
  7. <form action="index.php?view=order" method="post" id="cart-form">
  8.  
  9. <table id="mycart" align="center" cellspacing="0" cellpadding="0" border="0">
  10.       <tr>
  11.             <th>Товар</th>
  12.             <th>Цена</th>
  13.             <th>Кол-во</th>
  14.             <th>Всего</th>
  15.       </tr>
  16.  
  17.       <? foreach($_SESSION['cart'] as $id => $quantity):
  18.          $product = get_product($id);
  19.       ?>
  20.        
  21.       <tr>
  22.           <td align="center"><?=$product['title'];?></td>
  23.           <td align="center"><?=number_format($product['price'],2);?></td>
  24.           <td align="center"><?=$quantity;?></td>
  25.           <td align="center"><?=number_format($product['price'] * $quantity ,2);?></td>
  26.       </tr>
  27.      
  28.       <?endforeach;?>
  29.      
  30. </table>    
  31.      <p class="total" align="center">Общая сумма заказа: <span class="product-price"><?=number_format($_SESSION['total_price'],2);?></span></p>
  32.      
  33.      <p align="center" style="color:  black;">
  34.  
  35. Ваше Имя:      <input type="text" name="name" required/>     Ваша Фамилия:      <input type="text" name="s_name" required/>     Ваш адрес:      <input type="text" name="address" required/>     Почтовый индекс:      <input type="text" name="post_index" required/>     Ваш e-mail:      <input type="text" name="email" /><br required/>
  36.      </p>
  37.    
  38.    
  39.      <p align="center"><input type="submit" name="order" value="Заказать" /></p>  
  40. </form>
  41.  
  42. <?
  43. }
  44. if($_SESSION['cart'] && isset($_POST['order']))
  45. {
  46.  
  47.     $pattern_name = '/^[a-zA-Zа-яА-ЯЁё]{1,32}$/u';
  48.     $pattern_index = '/^[0-9]{6}$/u';
  49.     $pattern_email = '/^[\w\.\-]+\@+[a-z]+\.+[a-z]{1,5}$/';
  50.     $pattern_addres = '/^[a-zA-Zа-яА-ЯЁё0-9\s\.]{1,100}$/u';// \s - пробел, точка
  51.     if (!empty($_POST['s_name'])){
  52.         if(!preg_match($pattern_name, $_POST['s_name'])){
  53.             $error = "Некорректно введёна фамилия"; //ошибка
  54.         } else {
  55.             $error = false; //ошибка не найдена
  56.         }
  57.     }
  58.     if (!empty($_POST['name'])){
  59.         if(!preg_match($pattern_name, $_POST['name'])){
  60.             $error = "Некорректно введно имя";
  61.         } else {
  62.             $error = false;
  63.         }
  64.     }
  65.     if (!empty($_POST['post_index'])){
  66.         if(!preg_match($pattern_index, $_POST['post_index'])){
  67.             $error = "Некорректно введён почтовый индекс" ;
  68.         } else {
  69.             $error = false;
  70.         }
  71.     }
  72.     if (!empty($_POST['addres'])){
  73.         if(!preg_match($pattern_addres, $_POST['addres'])){
  74.             $error = "Некорректно введён адрес";
  75.         } else {
  76.             $error = false;
  77.         }
  78.     }
  79.     if (!empty($_POST['email'])){
  80.         if(!preg_match($pattern_email, $_POST['email'])){
  81.             $error = "Некорректно введён email";
  82.         } else {
  83.             $error = false;
  84.         }
  85.     }
  86.  
  87.     if ($error === false) //Если ошибка не найдена, выполняется код
  88.     {
  89.  
  90.     foreach($_POST as $ArrKey => $ArrStr)
  91.     {
  92.         $ArrKey = $_POST[$ArrKey];
  93.     }
  94.     $date = date('Y-m-d');
  95.     $time = date('H:i:s');
  96.    
  97.     foreach($_SESSION['cart'] as $id => $quantity):
  98.     $product = get_product($id);
  99.         $query = mysql_query("INSERT INTO orders(name,s_name,address,post_index,email,date,time,product,prod_id,price,qty) VALUES ('$name','$s_name','$address','$post_index','$email','$date','$time','{$product['title']}','{$product['id']}','{$product['price']}','$quantity')");
  100.     endforeach;
  101.    
  102.     echo "<p align='center' style='color: #black;'>Ваш заказ успешно принят! Спасибо за покупку!</p>";
  103.  
  104.     }
  105.     else
  106.     {
  107.      //Если ошибка есть
  108.      echo "<p align='center' style='color: #black;'>ОШИБКА В ВВЕДЕННЫХ ДАННЫХ</p>";
  109.      }
  110. }
  111. ?>
  112. <?
Нордик Отправлено: 07 Июня, 2018 - 02:46:18 • Тема: Интегрирование кода • Форум: Вопросы новичков

Ответов: 1
Просмотров: 1344
Доброго времени суток, ситуация такая. Нужно было сделать проверку на вводимые символы, нашёл вроде рабочий код. Нужно интегрировать эту проверку в код. Пробовал но что-то не то делаю то код просто выводится на экран то ещё что. Очень прошу кто шарит помогите.
Вот проверка:
PHP:
скопировать код в буфер обмена
  1.     $pattern_name = '/^[a-zA-Zа-яА-ЯЁё]{1,32}$/u';
  2.     $pattern_index = '/^[0-9]{6}$/u';
  3.     $pattern_email = '/^[\w\.\-]+\@+[a-z]+\.+[a-z]{1,5}$/';
  4.     $pattern_addres = '/^[a-zA-Zа-яА-ЯЁё0-9\s\.]{1,100}$/u';// \s - пробел, точка
  5.     if (!empty($_POST['first_name'])){
  6.         if(!preg_match($pattern_name, $_POST['first_name'])){
  7.             echo "INVALID FNAME<br>";
  8.         }
  9.         $f_name = $_POST['first_name'];
  10.     }
  11.     if (!empty($_POST['last_name'])){
  12.         if(!preg_match($pattern_name, $_POST['last_name'])){
  13.             echo "INVALID LNAME<br>";
  14.         }
  15.         $l_name = $_POST['last_name'];
  16.     }
  17.     if (!empty($_POST['index'])){
  18.         if(!preg_match($pattern_index, $_POST['index'])){
  19.             echo "INVALID INDEX<br>";
  20.         }
  21.         $index = $_POST['index'];
  22.     }if (!empty($_POST['addres'])){
  23.         if(!preg_match($pattern_addres, $_POST['addres'])){
  24.             echo "INVALID ADDRES<br>";
  25.         }
  26.         $addres = $_POST['addres'];
  27.     }if (!empty($_POST['email'])){
  28.         if(!preg_match($pattern_email, $_POST['email'])){
  29.             echo "INVALID EMAIL<br>";
  30.         }
  31.         $email = $_POST['email'];
  32.     }
  33.     if(isset($f_name)){echo $f_name."<br>";}
  34.     if(isset($l_name)){echo $l_name."<br>";}
  35.     if(isset($index)){echo $index."<br>";}
  36.     if(isset($addres)){echo $addres."<br>";}
  37.     if(isset($email)){echo $email."<br>";}

Вот кусок кода куда нужна проверка проверка:
PHP:
скопировать код в буфер обмена
  1. Ваше Имя:      <input type="text" name="name" />     Ваша Фамилия:      <input type="text" name="s_name" />     Ваш адрес:      <input type="text" name="address" />     Почтовый индекс:      <input type="text" name="post_index" />     Ваш e-mail:      <input type="text" name="email" />     </p>

Всё что вводится в эти поля отправляется в бд.
Вот полный код куда нужно интегрировать проверку:
PHP:
скопировать код в буфер обмена
  1. <h2 align="center">Оформление заказа</h2>
  2.  
  3. <?
  4. if($_SESSION['cart'] && !isset($_POST['order']))
  5. {
  6. ?>
  7. <form action="index.php?view=order" method="post" id="cart-form">
  8.  
  9. <table id="mycart" align="center" cellspacing="0" cellpadding="0" border="0">
  10.       <tr>
  11.             <th>Товар</th>
  12.             <th>Цена</th>
  13.             <th>Кол-во</th>
  14.             <th>Всего</th>
  15.       </tr>
  16.  
  17.       <? foreach($_SESSION['cart'] as $id => $quantity):
  18.          $product = get_product($id);
  19.       ?>
  20.        
  21.       <tr>
  22.           <td align="center"><?=$product['title'];?></td>
  23.           <td align="center">$<?=number_format($product['price'],2);?></td>
  24.           <td align="center"><?=$quantity;?></td>
  25.           <td align="center">$<?=number_format($product['price'] * $quantity ,2);?></td>
  26.       </tr>
  27.      
  28.       <?endforeach;?>
  29.      
  30. </table>  
  31.      <p class="total" align="center">Общая сумма заказа: <span class="product-price"><?=number_format($_SESSION['total_price'],2);?> $</span></p>
  32.    
  33.      <p align="center" style="color:  black;">
  34.    
  35. Ваше Имя:      <input type="text" name="name" />     Ваша Фамилия:      <input type="text" name="s_name" />     Ваш адрес:      <input type="text" name="address" />     Почтовый индекс:      <input type="text" name="post_index" />     Ваш e-mail:      <input type="text" name="email" />     </p>
  36.    
  37.    
  38.      <p align="center"><input type="submit" name="order" value="Заказать" /></p>  
  39. </form>
  40.  
  41. <?
  42. }
  43. if($_SESSION['cart'] && isset($_POST['order']))
  44. {
  45.     foreach($_POST as $ArrKey => $ArrStr)
  46.     {
  47.         $ArrKey = $_POST[$ArrKey];
  48.     }
  49.     $date = date('Y-m-d');
  50.     $time = date('H:i:s');
  51.    
  52.     foreach($_SESSION['cart'] as $id => $quantity):
  53.     $product = get_product($id);
  54.         $query = mysql_query("INSERT INTO orders(name,s_name,address,post_index,email,date,time,product,prod_id,price,qty) VALUES ('$name','$s_name','$address','$post_index','$email','$date','$time','{$product['title']}','{$product['id']}','{$product['price']}','$quantity')");
  55.     endforeach;
  56.    
  57.     echo "<p align='center' style='color: #black;'>Ваш заказ успешно принят! Спасибо за покупку!</p>";
  58. }
  59. ?>  
  60.  

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB