Автор Тема: Модуль Магазина продажи файлов для ФФ  (Прочитано 5769 раз)

0 Пользователей и 1 Гость просматривают эту тему.

velas85Автор темы

  • *
  • Оффлайн
  • Награды Более 8 лет на форуме Более 100 сообщений Топ 10 по созданным темам Репутация более 5 За время в онлайне на форуме Более 50 созданных тем
  • Дата регистрации: Дек. 2015
  • Сообщений: 188
  • Страна: by
  • Поблагодарили: 21 раз(а)
  • Репутация +6/-1
  • Пол: Мужской
Все вопросы связанные с данным модулем пишем тут



 
Пользователи, которые поблагодарили этот пост: crystaltrumpet

barakuda

  • *
  • Оффлайн
  • Награды Более 7 лет на форуме Более 50 сообщений Более 10 созданных тем За время в онлайне на форуме
  • Дата регистрации: Дек. 2015
  • Сообщений: 58
  • Страна: ua
  • Репутация +0/-0
  • Пол: Мужской
Модуль Магазина продажи файлов для ФФ
« Ответ #1 : 27 Марта 2016, 14:47:54 »
что за ошибка такая? You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-8, 8' at line 1
a:0:{}
 

WebTheory

  • *
  • Оффлайн
  • Награды Более 8 лет на форуме Более 100 сообщений
  • Дата регистрации: Янв. 2016
  • Расположение: Кишинёв
  • Сообщений: 115
  • Страна: md
  • Поблагодарили: 4 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Модуль Магазина продажи файлов для ФФ
« Ответ #2 : 12 Апреля 2017, 10:58:44 »
что за ошибка такая? You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-8, 8' at line 1
Поддерживаю
a:0:{}
 

Shop-53

  • *
  • Оффлайн
  • Награды Более 8 лет на форуме Более 250 сообщений Топ 10 по сообщениям Более 10 созданных тем За время в онлайне на форуме
  • Дата регистрации: Фев. 2016
  • Сообщений: 417
  • Поблагодарили: 35 раз(а)
  • Репутация +2/-2
  • Пол: Мужской
Модуль Магазина продажи файлов для ФФ
« Ответ #3 : 12 Апреля 2017, 13:35:48 »
Вроде как би есть какая то увязимость sql
a:0:{}
 

WebTheory

  • *
  • Оффлайн
  • Награды Более 8 лет на форуме Более 100 сообщений
  • Дата регистрации: Янв. 2016
  • Расположение: Кишинёв
  • Сообщений: 115
  • Страна: md
  • Поблагодарили: 4 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Модуль Магазина продажи файлов для ФФ
« Ответ #4 : 12 Апреля 2017, 14:19:53 »
мне нужно что бы он заработал уязвимости и потом можно закрыть я же не сразу буду запускать а тестить его
 

takebet

Модуль Магазина продажи файлов для ФФ
« Ответ #5 : 12 Апреля 2017, 18:13:48 »
что за ошибка такая? You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-8, 8' at line 1

Нужно загрузить первый товар, тогда ошибка эта пропадет.
 

Kuper

  • *
  • Оффлайн
  • Награды Более 7 лет на форуме Более 250 сообщений Топ 10 по сообщениям Репутация более 5
  • Дата регистрации: Дек. 2016
  • Возраст: 34
  • Сообщений: 435
  • Страна: ru
  • Поблагодарили: 35 раз(а)
  • Репутация +8/-2
  • Пол: Мужской
  • Дата рождения:
    1989-11-19
    Социальные сети:
    ВКонтакте
Модуль Магазина продажи файлов для ФФ
« Ответ #6 : 12 Апреля 2017, 18:13:52 »
Дело не в уязвимости, просто кривой код.Если хотите,у меня есть рабочий модуль магазина :be happy: Пишите в лс.

Stas79

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 10 сообщений
  • Дата регистрации: Апр. 2017
  • Сообщений: 30
  • Страна: ua
  • Поблагодарили: 1 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Модуль Магазина продажи файлов для ФФ
« Ответ #7 : 21 Мая 2017, 16:57:23 »
Ниже код. Протестировал модуль, все работает хорошо только не снимает с баланса покупателя. Знаю что хожу гдето рядом а исправить не могу. может кто поможет?
<?PHP header("Content-Type: text/html; charset=windows-1251");?>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />

</div>

<?PHP
$_OPTIMIZATION["title"] = "Магазин";
$_OPTIMIZATION["description"] = "Магазин";
$_OPTIMIZATION["keywords"] = "Магазин";
?>
<div class="cl-right">
<div class="s-bk-lf">
   <div class="acc-title">Магазин</div>
</div>
<div class="silver-bk"><div class="clr">

<?php
   $userid = $_SESSION["user_id"];
   $username = $_SESSION["user"];
   $data = time();

$db->Query("SELECT * FROM `db_config` WHERE id = '1' LIMIT 1");
$sonfig_site = $db->FetchArray();

$db->Query("SELECT * FROM `db_users_a` WHERE id = '$userid' AND user = '$username' LIMIT 1");
$user_array = $db->FetchArray();

$db->Query("SELECT * FROM db_users_b WHERE id = '$userid' LIMIT 1");
$user_data = $db->FetchArray();

$db->Query("SELECT * FROM `db_mag_cat` ");
$cat_site = $db->FetchArray();

 if(isset($_GET["show"])){
   $idShow = $_GET['show'];
   echo $idShow;
    $db->Query("SELECT * FROM `db_mag` WHERE id=".$idShow);
    $show = $db->FetchArray();
    $serebro = $show['price'] * $sonfig_site["ser_per_wmr"];
    $link = "http://".$_SERVER['SERVER_NAME']."/uploads/".$show["namefile"]."";

    if ($idShow == $show['id']) { // Проверка на существование товара в магазине

      $mass = "[br /]<center>Поздравляем с приобретением ".$show["name"]."![br /]
      С Вашего счета было списано ".$serebro." серебра.[br /][br /]
      Скачать архив можно по сылке: <a target='_blank' href='".$link."'>".$link."[/url][br /]
      или нажав <a target='_blank' href='".$link."'> =>>> СЮДА[/url][br /][br /]
      Спасибо!</center>";

      # Блокировка сессии
      if(!isset($_SESSION["user_id"])){
          //Header("Location: /");
          echo "<center><H2 style='color:red'>Авторизуйтесь, пожалуйста! <a href='/magazin'>Назад[/url]</H2></center>";
          //return;
      }
      else
      {
         # Проверяем баланс пользовтеля
         if($serebro <= $user_data["money_b"]){
            # Проверяем на существующие заявки
            $db->Query("SELECT COUNT(*) FROM `db_mag_orders` WHERE user_name = '$username' AND user_id = '$userid' AND tovar_id = '$idShow' ");
            if($db->FetchRow() == 0){
            //echo "No";

               # ==== ОПЛАТА ПОЛЬЗОВАТЕЛЮ ==== #
               # Проверяем на существующие заявки
               $db->Query("SELECT COUNT(*) FROM `db_mag_users` WHERE tovar_id = '$idShow' ");
               if($db->FetchRow() == 0){
                  //echo "Нет товара! Пользователь НЕ продает!";
                  # СРЕДСТВА ИДУТ АДМИНУ, т.к. выложил товар АДМИН. #

                  # Заносим в db_mag_orders покупку
                  $db->Query("INSERT INTO `db_mag_orders` (user_name, user_id, tovar_id, date_add, sum)
                              VALUES ('$username','$userid','$idShow','$data', '".$show['price']."') ");

                  # Снимаем с пользователя
                  $db->Query("UPDATE `db_users_b` SET money_b = money_b - '$serebro' WHERE id = '$userid'");

                  # Отправляем на почту
                  $sender = new isender;
                  $sender -> SendMagazin($username, $user_array["email"], $link);

                      # Выводим сообщение
                  echo $mass;

               } else {
                  //echo "Есть такой товар. Пользователь продает!";
                  # СРЕДСТВА ИДУТ ПОЛЬЗОВАТЕЛЮ, т.к. выложил товар ПОЛЬЗОВАТЕЛЬ. #

                  # Заносим в db_mag_orders покупку
                  $db->Query("INSERT INTO `db_mag_orders` (user_name, user_id, tovar_id, date_add, sum)
                              VALUES ('$username','$userid','$idShow','$data', '".$show['price']."') ");

                  # Добавляем на баланс пользователю
                  $db->Query("SELECT * FROM `db_mag_users` WHERE tovar_id = ".$idShow);
                   $showRow = $db->FetchArray();
                   $idUserTov = $showRow['user_id'];

                  $db->Query("UPDATE `db_users_b` SET money_b = money_b + '$serebro' WHERE id = '$idUserTov'");

                  # Добавляем статистику пользователю
                  $db->Query("UPDATE `db_mag_users` SET sumtov = sumtov + '$serebro' WHERE user_id = '$idUserTov' AND tovar_id = '$idShow' ");

                  # Отправляем на почту
                  $sender = new isender;
                  $sender -> SendMagazin($username, $user_array["email"], $link);

                      # Выводим сообщение
                  echo $mass;
               }

               # ==== /ОПЛАТА ПОЛЬЗОВАТЕЛЮ ==== #
            }
            else
            {
               echo "<center><H2 style='color:red'>Вы уже покупали данный товар! <a href='/magazin'>Назад[/url]</H2>
                     Скачать архив можно по сылке: <a target='_blank' href='".$link."'>".$link."[/url][br /]
                     или нажав <a target='_blank' href='".$link."'> =>>> СЮДА[/url][br /][br /]</center>";
            }

           }else echo "<center><H2 style='color:red'>Недостаточно средств! <a href='/magazin'>Назад[/url]</H2></center>";

      }

   } else echo "<center><H2 style='color:red'>Такого товара НЕТ! <a href='/magazin'>Назад[/url]</H2></center>";

 }
 else
 {
 #start //echo "no show";

   if(isset($_GET["buy"])){
      $idTovar = $_GET['buy'];

      $db->Query("SELECT COUNT(*) FROM `db_mag` WHERE id = '$idTovar' ");
      if($db->FetchRow() == 0){ // Проверка на существование товара в магазине
         echo "<center><H2 style='color:red'>Такой товар купить нельзя! <a href='/magazin'>Назад[/url]</H2></center>";
      }
        else
        {

         $db->Query("SELECT * FROM `db_mag` WHERE id=".$idTovar);
         while($magtov = $db->FetchArray()){
            $serebro = $magtov['price'] * $sonfig_site["ser_per_wmr"];
            ?>
            <table align="left" cellspacing="5" cellpadding="5" border="1" width="99%">
            <tr>
               <td><H2><?=$magtov["name"];?></H2></td>
               <td>Дата публикации: <?=date("d.m.Y",$magtov["date_add"]); ?> в <?=date("H:m:s",$magtov["date_add"]); ?></td>
            </tr>
            <tr>
               <td colspan="2" align="center"><img src="../../uploads/<?php echo $magtov['img']; ?>" width="" height="" /></td>
            </tr>
            <tr>
               <td colspan="2"><?php echo $magtov["description"]; ?></td>
            </tr>
            <tr>
               <td colspan="1">Цена: <?=$magtov['price'];?> RUB</td>
               <td colspan="1"><a href="/magazin/show/<?=$magtov['id'];?> ">КУПИТЬ[/url]</td>
            </tr>
         </table>
      <?php
         }
      }
   }
   else
   {
      #start //echo "no bye";
?>

<?php

      if(isset($_GET["cat"])){
         $idCat = $_GET["cat"];

         $db->Query("SELECT * FROM `db_mag` WHERE `id_cat` = '$idCat'  ORDER BY `id` DESC ");

         if($db->NumRows() > 0){

            while($mag = $db->FetchArray()){
         ?>

            <table align="left" cellspacing="5" cellpadding="5" border="1" width="99%">
            <tr>
               <td>№<?=$mag["id"];?></td>
               <td><?=$mag["name"];?></td>
               <td>Дата публикации: <?=date("d.m.Y",$mag["date_add"]); ?> в <?=date("H:m:s",$mag["date_add"]); ?></td>
            </tr>
            <tr>
               <td colspan="3"><img src="/uploads/<?=$mag['img'];?>" width="" height="35%" >&nbsp;&nbsp;<?php $desc=$mag["description"]; echo substr("$desc", 0, 100)."..."; /* читаем с нулевого символа, до 100 и добавляем многоточие */ ?></td>
            </tr>
            <tr>
               <td colspan="2"><a href="/magazin/buy/<?=$mag['id'];?>">Подробнее о товаре ...[/url]</td>
            </tr>
            </table>
             <HR/>
         <?php
            }

         }
         else
         {
            $db->Query("SELECT COUNT(*) FROM `db_mag_cat` WHERE id = '$idCat' ");
            if($db->FetchRow() !== 0){ // Проверка на существование товара в магазине
               echo "<center><H2 style='color:red'>Такой категории товара НЕТ! <a href='/magazin'>Назад[/url]</H2></center>";
            }
            else
            {
               echo "<center><H2 style='color:red'>Такого товара НЕТ! <a href='/magazin'>Назад[/url]</H2></center>";
            }

         }

      }
      else
      {
         # ========== Постраничная навигация =============== #
            DEFINE('ITEMS_PER_PAGE', 8); # <= количество товаров на страницу
            // Выбираем из БД общее количество записей
            $db->Query("SELECT COUNT(*) FROM `db_mag` ");
            //$res = $db->FetchRow();
            $total = $db->FetchRow( 0, 0 );

            // Проверяем передан ли номер текущей страницы
            if ( isset($_GET['page']) ) {
              $page = (int)$_GET['page'];
              if ( $page < 1 ) $page = 1;
            } else {
              $page = 1;
            }

            // Сколько всего получится страниц
            $cnt_pages = ceil( $total / ITEMS_PER_PAGE );
            if ( $page > $cnt_pages ) $page = $cnt_pages;
            // Начальная позиция
            $start = ( $page - 1 ) * ITEMS_PER_PAGE;
         # ========== /Постраничная навигация =============== #

         $db->Query("SELECT * FROM `db_mag` ORDER BY `id` DESC LIMIT ".$start.", ".ITEMS_PER_PAGE);

         if($db->NumRows() > 0){
            while($mag = $db->FetchArray()){
         ?>

            <table align="left" cellspacing="5" cellpadding="5" border="1" width="99%">
            <tr>
               <td>№<?=$mag["id"];?></td>
               <td><?=$mag["name"];?></td>
               <td>Дата публикации: <?=date("d.m.Y",$mag["date_add"]); ?> в <?=date("H:m:s",$mag["date_add"]); ?></td>
            </tr>
            <tr>
               <td colspan="3"><img src="/uploads/<?=$mag['img'];?>" width="" height="35%" >&nbsp;&nbsp;<?php $desc=$mag["description"]; echo substr("$desc", 0, 100)."..."; /* читаем с нулевого символа, до 100 и добавляем многоточие */ ?></td>
            </tr>
            <tr>
               <td colspan="2"><a href="/magazin/buy/<?=$mag['id'];?>">Подробнее о товаре ...[/url]</td>
            </tr>
            </table>
             <HR/>
         <?php
            }

         }else echo "[br /]<center>Товаров нет!</center>";

         # ========== Постраничная навигация =============== #
             if ( $cnt_pages > 1 ){
             echo '<div style="margin:1em 0">&nbsp;Страницы: ';
             // Проверяем нужна ли стрелка "В начало"
             if ( $page > 3 )
                 $startpage = '<a href="/magazin/1"><<[/url] ... ';
             else
                 $startpage = '';
             // Проверяем нужна ли стрелка "В конец"
             if ( $page < ($cnt_pages - 2) )
                 $endpage = ' ... <a href="/magazin/'.$cnt_pages.'">>>[/url]';
             else
                 $endpage = '';

             // Находим две ближайшие станицы с обоих краев, если они есть
             if ( $page - 2 > 0 )
                 $page2left = ' <a href="/magazin/'.($page - 2).'">'.($page - 2).'[/url] | ';
             else
                 $page2left = '';
             if ( $page - 1 > 0 )
                 $page1left = ' <a href="/magazin/'.($page - 1).'">'.($page - 1).'[/url] | ';
             else
                 $page1left = '';
             if ( $page + 2 <= $cnt_pages )
                 $page2right = ' | <a href="/magazin/'.($page + 2).'">'.($page + 2).'[/url]';
             else
                 $page2right = '';
             if ( $page + 1 <= $cnt_pages )
                 $page1right = ' | <a href="/magazin/'.($page + 1).'">'.($page + 1).'[/url]';
             else
                 $page1right = '';

             // Выводим меню
             echo $startpage.$page2left.$page1left.'<strong>'.$page.'</strong>'.$page1right.$page2right.$endpage;

             echo '</div>';
             }
         # ========== /Постраничная навигация =============== #

         }#Finish //echo "no cat";

   }#Finish //echo "no bye";

 }#Finish //echo "no show";
?>


</div>
<div class="clr"></div>
</center>
            
            </div>
            
               </div>
         
   <div align="center" style="font-size:8px">
</div>
   </body>
</html>

Проблема я думаю в этой строке:
# Снимаем с пользователя
$db->Query("UPDATE `db_users_b` SET money_b = money_b - '$serebro' WHERE id = '$userid'");


Но что я только не делал что-то у меня не выходит. Надеюсь на Вашу помощь.


Добавлено сообщение: [time]21 Май 2017, 17:00:25[/time]
Во время покупки продавцу зачисляет а с покупателя с баланса не снимает. Кто знает решение. Может подскажете? Благодарю заранее. Пол дня уже долблю, картинки подправил то подправил, думал уже все остануться только стили, ага не то-то было. Вот сижу, и уже башка не хочет варить. Поэтому обратился к Вам.

Добавлено сообщение: [time]21 Май 2017, 21:10:59[/time]
Да хоть бы кто взглянул в тему, подсказал что-то. Вроде форум живой? Странно....

Добавлено сообщение: [time]21 Май 2017, 21:13:04[/time]
Или только в личку и за деньги? Зачем тогда здесь тогда общаться спрашивать что-то?

Добавлено сообщение: 21 Мая 2017, 23:54:18
Извините если я был грубоват в данной теме, но проблема решена. Благодарю всех кто как-то принимал в этом участие. ))=(.
 

roki28

  • *
  • Оффлайн
  • Награды Более 7 лет на форуме Более 100 сообщений Более 10 созданных тем
  • Дата регистрации: Май 2016
  • Сообщений: 141
  • Страна: by
  • Поблагодарили: 4 раз(а)
  • Репутация +1/-2
  • Пол: Мужской
Модуль Магазина продажи файлов для ФФ
« Ответ #8 : 03 Октября 2017, 10:17:32 »
Где скачать?
 
Теги: