Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 02:05

Настройка обмена данными с WEB-сайтом

Автор Максим Чередник, 08 дек 2015, 00:01

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

Максим Чередник

Доброго всем времени суток. Помогите пожалуйста разобраться пытаюсь произвести обмен данными с веб сайтом... но все время выплывает ошибка.
Картинка
Вот скрипт который общается с 1С

<?php
/**
 * Created by PhpStorm.
 * User: maks7
 * Date: 27.11.2015
 * Time: 13:47
 */
import1c_page();

function 
import1c_page(){
    
session_start();

    if(!empty(
$_GET['mode'])){
        if(
$_GET['mode'] == 'checkauth'){
            print 
"success"."\n";
            print 
session_name()."\n";
            print 
session_id();
        }

        if(
$_GET['mode'] == 'init'){
            print 
"zip=no\n".
                
"file_limit=100000000\n";
        }

        if(
$_GET['mode'] == 'file'){
            
// Путь до папки куда можно выгрузить картинки
            
$main_path 'sites/default/files/import1c';
            
$main_path trim($main_path,'/');
            
$path explode('/',$_GET['filename']);
            
array_pop($path);
            if(
count($path)){
                
$cur_dir $main_path;
                foreach(
$path as $dir){
                    
$cur_dir.='/'.$dir;
                    if(!
file_exists($cur_dir))
                        
mkdir($cur_dir);
                }
            }


            
$f fopen('sites/default/files/import1c/'.$_GET['filename'], 'w+');
            
fwrite($ffile_get_contents('php://input'));
            
fclose($f);
            print 
"success\n";
            
            
/**
            if($_GET['filename'] == 'offers.xml'){
                $file  = 'sites/default/files/import1c/offers.xml';
                $xml = simplexml_load_file($file);
                foreach($xml->ПакетПредложений->Предложения as $product){
                    foreach($product as $item){

                        $product_id = db_select('commerce_product', 'c')
                            ->fields('c')
                            ->condition('c.sku', $item->Ид)
                            ->execute()
                            ->fetchObject();

                        if(!empty($product_id->product_id)){ //обновляем товар если он есть
                            $tovar = commerce_product_load($product_id->product_id);


                            $form_state = array();
                            $form_state['values'] = array();
                            $form = array();
                            $form['#parents'] = array();

                            $price = array(LANGUAGE_NONE => array(0 => array(
                                'amount' => $item->Цены->Цена->ЦенаЗаЕдиницу * 100,
                                'currency_code' => 'RUB',
                            )));
                            $form_state['values']['commerce_price'] = $price;

                            field_attach_submit('product', $tovar, $form, $form_state);

                            commerce_product_save($tovar);

                        }else{ //добавляем товар если его нет

                            $form_state = array();
                            $form_state['values'] = '';
                            $form = array();
                            $form['#parents'] = array();

                            $new_product = commerce_product_new('product');

                            $new_product->status = 1;
                            $new_product->uid = 1;
                            $new_product->sku = $item->Ид;
                            $new_product->title = $item->Наименование;
                            $new_product->type = 'product';
                            $new_product->created = $new_product->changed = time();
                            $new_product->language  = LANGUAGE_NONE;
                            $new_product->commerce_price['und'][0]['amount'] = $item->Цены->Цена->ЦенаЗаЕдиницу * 100;
                            $new_product->commerce_price['und'][0]['currency_code'] = 'RUB';
                            $new_product->commerce_price['und'][0]['data']['component'] = array();


                            field_attach_submit('product', $new_product, $form, $form_state);

                            commerce_product_save($new_product);


                            $node = new stdClass();
                            $node->type = 'product';
                            node_object_prepare($node);
                            $node->title    = $item->Наименование;
                            $node->language = LANGUAGE_NONE;
                            $node->field_id['und'][0]['value'] = $item->Ид;
                            $node->field_id['und'][0]['safe_value'] = $item->Ид;
                            $node->field_id['und'][0]['format'] = NULL;
                            $node->body[$node->language][0]['value']   = 'описание товара';
                            $node->body[$node->language][0]['summary'] = 'описание товара';
                            $node->body[$node->language][0]['format']  = 'filtered_html';
                            $node->field_product['und'][0]['product_id'] = $new_product->product_id;
                            $node->uid = 1;
                            node_save($node);
                        }
                    }
                }
            } // конец добавления и изменения товаров


            if($_GET['filename'] == 'import.xml'){
                $file  = 'sites/default/files/import1c/import.xml';
                $xml = simplexml_load_file($file);
                foreach($xml->Каталог->Товары as $product){
                    foreach($product as $item){

                    }
                }
            }
             */
        
}

        if(
$_GET['mode'] == 'import'){
            print 
"success\n";
        }
    }
    exit;
}

Если есть варианты кода который я возможно про-втыкал прошу прикрепить пример или ссылку)))

cska-fanat-kz

причем здесь PHP-шный код и ошибка на стороне 1С?

может все-таки логин, пароль надо указать?
на сайте Битрикса вроде без пароля не авторизоваться...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Максим Чередник

Я пробовал с логином и паролем ничего не меняется.<_<

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск