Добавляет запись в базу 2 раза, в чём проблема хз...

Тема в разделе "Импорт CSV", создана пользователем pomidor26, 30 дек 2015.

  1. pomidor26

    pomidor26 New Member Пользователи

    Регистрация:
    20 сен 2015
    Сообщения:
    11
    Привет всем! С наступающим!))
    Столкнулся вот с какой проблемой:
    парсю страницы сайта и отдаю данные в php файл для обработки и вставки записей в базу, но так получается, что запись вставляется 2 раза подряд из-за чего хз... Сижу уже какой час с этой проблемой.
    Может кто знает как её решить, заранее благодарен!

    PHP:
    <?php
    header
    ('Content-Type: text/html; charset=utf-8');

    $url $_POST['url'];
    $img $_POST['img'];
    $name $_POST['name'];
    $group $_POST['group'];


    set_time_limit(0);

    $sq translate('sq'$name);
    $en translate('en'$name);
    $ar translate('ar'$name);
    $hy translate('hy'$name);
    $az translate('az'$name);
    $af translate('af'$name);
    $eu translate('eu'$name);
    $be translate('be'$name);
    $bg translate('bg'$name);
    $bs translate('bs'$name);
    $cy translate('cy'$name);
    $vi translate('vi'$name);
    $hu translate('hu'$name);
    $ht translate('ht'$name);
    $gl translate('gl'$name);
    $nl translate('nl'$name);
    $el translate('el'$name);
    $ka translate('ka'$name);
    $da translate('da'$name);
    $he translate('he'$name);
    $id translate('id'$name);
    $ga translate('ga'$name);
    $it translate('it'$name);
    $is translate('is'$name);
    $es translate('es'$name);
    $kk translate('kk'$name);
    $ca translate('ca'$name);
    $ky translate('ky'$name);
    $zh translate('zh'$name);
    $ko translate('ko'$name);
    $la translate('la'$name);
    $lv translate('lv'$name);
    $lt translate('lt'$name);
    $mg translate('mg'$name);
    $ms translate('ms'$name);
    $mt translate('mt'$name);
    $mk translate('mk'$name);
    $mn translate('mn'$name);
    $de translate('de'$name);
    $no translate('no'$name);
    $fa translate('fa'$name);
    $pl translate('pl'$name);
    $pt translate('pt'$name);
    $ro translate('ro'$name);
    $ru translate('ru'$name);
    $sr translate('sr'$name);
    $sk translate('sk'$name);
    $sl translate('sl'$name);
    $sw translate('sw'$name);
    $tg translate('tg'$name);
    $th translate('th'$name);
    $tl translate('tl'$name);
    $tt translate('tt'$name);
    $tr translate('tr'$name);
    $uz translate('uz'$name);
    $uk translate('uk'$name);
    $fi translate('fi'$name);
    $fr translate('fr'$name);
    $hr translate('hr'$name);
    $cs translate('cs'$name);
    $sv translate('sv'$name);
    $et translate('et'$name);
    $ja translate('ja'$name);

    $id insertInTable($url$img$sq$en,$ar,$hy,$az,$af,$eu,$be ,$bg ,$bs ,$cy,$vi,$hu,$ht,$gl,$nl,$el,$ka,$da,$he,$id,$ga,$it,$is,$es,$kk,$ca,$ky,$zh,$ko,$la,$lv,$lt,$mg,$ms,$mt,$mk,$mn,$de,$no,$fa,$pl ,$pt,$ro ,$ru,$sr,$sk,$sl,$sw,$tg ,$th ,$tl,$tt,$tr,$uz,$uk,$fi,$fr,$hr,$cs,$sv,$et,$ja);

    insertInTableVideoAndGroup($id4);


    function 
    translate($lang$text){
        
    $query "МойКод&lang=$lang&text=$text";
        
    $res file_get_contents($query);
        
    $res json_decode($restrue);
        
    $res['text'][0] = mb_convert_encoding ($res['text'][0] , "UTF-8" ,"auto");
        return 
    $res['text'][0];
    }



    function 
    insertInTableVideoAndGroup($id_video,$id_group){
        
    Armada\DB::insert('lst_video_and_group', array(
           
    'id_video' => $id_video,
           
    'id_group' => $id_group
        
    ));
    }


    function 
    insertInTable($url$img$sq "sq"$en "en",$ar "ar",$hy "hy",$az "az",$af "af",$eu "eu",$be "be",$bg "bg",$bs "bs",$cy "cy",$vi "vi",$hu "hu",$ht "ht",$gl "gl",$nl "nl",$el "el",$ka "ka",$da "da",$he "he",$id "id",$ga "ga",$it "lt",$is "is",$es "es",$kk "kk",$ca "ca",$ky "ky",$zh "zh",$ko "ko",$la "la",$lv "lv",$lt "lt",$mg "mg",$ms "ms",$mt "mt",$mk "mk",$mn "mn",$de "de",$no "no",$fa "fa",$pl "pl",$pt "pt",$ro "ro",$ru "ru",$sr "sr",$sk "sk",$sl "sl",$sw "sw",$tg "tg",$th "th",$tl "tl",$tt "tt",$tr "tr",$uz "uz",$uk "uk",$fi "fi",$fr "fr",$hr "hr",$cs "cs",$sv "sv",$et "et",$ja "ja"){

        
    $id Armada\DB::insert('lst_video', array(
            
    'url' => $url,
            
    'img' => $img,
            
    'sq' => $sq,
            
    'en' => $en,
            
    'ar' => $ar,
            
    'hy' => $hy,
            
    'az' => $az,
            
    'af' => $af,
            
    'eu' => $eu,
            
    'be' => $be,
            
    'bg' => $bg,
            
    'bs' => $bs,
            
    'cy' => $cy,
            
    'vi' => $vi,
            
    'hu' => $hu,
            
    'ht' => $ht,
            
    'gl' => $gl,
            
    'nl' => $nl,
            
    'el' => $el,
            
    'ka' => $ka,
            
    'da' => $da,
            
    'he' => $he,
            
    'ld' => $id,
            
    'ga' => $ga,
            
    'it' => $it,
            
    'ls' => $is,
            
    'es' => $es,
            
    'kk' => $kk,
            
    'ca' => $ca,
            
    'ky' => $ky,
            
    'zh' => $zh,
            
    'ko' => $ko,
            
    'la' => $la,
            
    'lv' => $lv,
            
    'lt' => $lt,
            
    'mg' => $mg,
            
    'ms' => $ms,
            
    'mt' => $mt,
            
    'mk' => $mk,
            
    'mn' => $mn,
            
    'de' => $de,
            
    'no' => $no,
            
    'fa' => $fa,
            
    'pl' => $pl,
            
    'pt' => $pt,
            
    'ro' => $ro,
            
    'ru' => $ru,
            
    'sr' => $sr,
            
    'sk' => $sk,
            
    'sl' => $sl,
            
    'sw' => $sw,
            
    'tg' => $tg,
            
    'th' => $th,
            
    'tl' => $tl,
            
    'tt' => $tt,
            
    'tr' => $tr,
            
    'uz' => $uz,
            
    'uk' => $uk,
            
    'fi' => $fi,
            
    'fr' => $fr,
            
    'hr' => $hr,
            
    'cs' => $cs,
            
    'sv' => $sv,
            
    'et' => $et,
            
    'ja' => $ja
        
    ));
        return 
    $id;
    }

    ?>
    Функцию вызываю один раз, хз почему так происходит... Может настройки программы как-то не так работают?
     

    Вложения:

  2. pomidor26

    pomidor26 New Member Пользователи

    Регистрация:
    20 сен 2015
    Сообщения:
    11
    таблица lst_video
     

    Вложения:

  3. pomidor26

    pomidor26 New Member Пользователи

    Регистрация:
    20 сен 2015
    Сообщения:
    11
    Я закомментировал строку, в которой происходит добавление записи, так после у меня ни одна запись и не добавлялась
    У меня такое ощущение, что он выполняет скрипт CD, заходит в php файл, добавляет в БД данные. Потом CD показывает, что программа завершила свою работу, а сам ещё раз заходит в php файл и выполняет в нём скрипт и добавляет данные в БД.
    Что делать?
     
  4. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    А что у вас здесь (выделено зеленым на скриншоте) указано? (это окно предпросмотра результатов парсинга контента).

    С уважением к вам, Сергей...
     

    Вложения:

  5. pomidor26

    pomidor26 New Member Пользователи

    Регистрация:
    20 сен 2015
    Сообщения:
    11
    Вот что там находится.

    Шаги:
    1.Запускаю парсинг ссылок
    2.Прога в каждой ссылке находит данные и напрявляет их на php файл
    3.Там идёт обработка, перевод и вставка в базу данных
    4.После вставки в базу, программа завершает свою работу и CD показывает информационное окно о том, что “Результирующий документ оказался пустым”, типа всё сработало успешно.
    5.Спустя минуту(такое же время, которое было затрачено на 3-ий пункт) добавляется в базу ещё одна запись, точно такая же…
     

    Вложения:

  6. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Как видно из лога, Content Downloader выполняет всего один запрос к вашему PHP-скрипту!

    Логично предположить, что проблема со стороны сервера (скорее всего в скрипте PHP, который добавляет записи в базу сайта). Разберитесь с PHP-скриптом.

    С уважением к вам, Сергей.
     

Поделиться этой страницей