Ответы пользователя по тегу PHP
  • Как правильно выполнить запрос Odata?

    @Dementor Куратор тега 1С
    программист
    Работайте не с КОИ-8Р, а с УТФ-8.
    Если не можете побороть кодировки в ПХП, то воспользуйтесь urlencode().
    Ответ написан
  • Какие знания нужны для связи сайта на php и 1с?

    @Dementor Куратор тега 1С
    программист
    tempick,
    Что за файл импорта/экспорта? В каком формате он должен быть?
    https://ru.wikipedia.org/wiki/CommerceML

    И как сделать импорт на стороне 1с?
    В некоторых конфигурациях интеграция есть изначально, для некоторых Битрикс сделал (https://1c.1c-bitrix.ru/ecommerce/download.php), а для оставшихся можно адаптировать битриксовские модули.
    Ответ написан
  • Как выгрузить базу из 1с в правильной кодировке?

    @Dementor Куратор тега 1С-Предприятие
    программист
    Какой-то бред написан...

    В системе 1С-Предприятие все данные внутри базы (конфигурация и ее версия тут не важны) хранятся в Юникоде (кроме варианта 7.7 - там действительно было в виндузовской кодировке). Сохранение любой информации по-умолчанию происходит в кодировке UTF-8, если явно не указать какую-то другую.

    Если нельзя - будут ли проблемы с работой сайта, если оставить таблице cp1251?

    Вы написали какой-то сайт на PHP и MySQL (судя по тегам), а теперь хотите от абсолютно незнакомых людей угадать: будут ли у вас проблемы??? Вас самого ничего не смущает в вашем вопросе? :)
    Ответ написан
  • Проблема обмена базы 1С с сайтом, почему выдает ошибку?

    @Dementor Куратор тега 1С
    программист
    Tiur: с учетом плавающего характера ошибки - это может быть закрытие соединения по таймауту.

    Не знаю как работает ваш опенкарт, но могу предположить что скрипт пытается загрузить ваш XML с помощью буферного чтения в файл. В какой-то момент срабатывает таймаут и сокет закрывается; загрузчик с помощью try-catch успешно обрабатывает ошибку и посылает ее куда подальше; остатки из буфера чтения успешно записываются в файл и происходит попытка его прочитать XML-парсером. В результате ошибка.

    Другими словами. Зайдите в настройки вашего веб-сервера и увеличьте таймаут по соединению и допустимый размер загружаемого файла. Кстати, не знаю какая у вас версия платформы, но раньше у них был интересный глюк - в заголовках пакетов при пересылке файлов указывался случайный размер и в части случаев была ошибка 413.
    Ответ написан
  • Переход из 1С в web-разработчики (PHP ) в 35 лет. С чего начать и реально ли?

    @Dementor Куратор тега 1С
    программист
    Недавно попробовал доработать для себя небольшой проект на Wordpress и понял...

    Вы человек-парадокс, обычно как раз после Wordpress люди считают PHP фиговым языком, а PHP-программистов говнокодерами. А еще ваша мотивация не очень понятна. Просто взять и уходить с хлебного 1С в никуда немного странно. Я бы посоветовал немного покопаться в себе и попытаться понять, что именно вам в программировании на платформе 1С не устраивает. Может вы просто работаете не над интересными для вас проектами и вам достаточно было просто сменить место работы?

    Не могу определить для себя последовательность шагов.

    Еще один плохой звоночек. "Высоконагруженные системы" - это вообще ни о чем. ERP с тысячей пользователей в базе - это тоже высоконагруженная система.

    Последовательность шагов зависит от того, куда конкретно вы захотите пойти. При приеме на работу в ВК, вас будут гонять по одним вопросам, в Яндекс - по другим; если пойдете в студию на поддержку и кастомизацию различных CMS, то там вас общей теорией грузить не будут, так как им нужны работники по конкретному профилю, а не Fullstack-специалисты, которые обкатают пару месяцев за их счет "стажировку" и уйдут в другое место на бОльшие деньги.

    В первую очередь вам нужно изучить сам язык программирования, пока без фреймворков. Когда я только начинал свой путь в программировании, то попал на переход между PHP3 и PHP4, когда на слуху у всех были изменения глобальных переменных (в первую очередь $_get и $_post), из-за которых приходилось переписывать все проекты, единственным фреймворком был ZEND, а единственно CMSкой был PHP-Nuke. Не мне вам рассказывать, как с тех пор все изменилось, но язык и базовые библиотеки практически те же - их вам и стоит хорошо знать, не зависимо от дальнейшей судьбы. Конкретные новые библиотеки и фреймворки, которые вам нужно дополнительно выучить, что бы быть востребованными на рынке труда вам подскажут другие, так как я с PHP распрощался очень давно и ни разу не пожалел.

    Еще подскажу, что нужно держать руку на пульсе. Не только узнавать про новые фреймворки из вакансий, но и самому читать хабровские еженедельные дайджесты новостей из мира PHP, подписаться на другие тематические рассылки, слушать подкасты. Зарегится на живом форуме, где крутятся PHP-программисты разных уровней - профи и новычки. Профи - это понятно. А новички вам нужны для того, что бы попробовать отвечать на их вопросы - так и теорию подтяните и ЧСВ :)

    Но не везде возьмут такого возрастного стажера...

    Не заморачивайтесь. Вы же не в продавцы-консультанты идете, что бы иметь молодое смазливое лицо для охмурения клиенток. И тем более не на курсы телохранителей. Главное, что бы у вас с логикой и скоростью мышления все было в порядке.

    И опять таки, не порывайте так быстро с 1С - переходите на полставки и в свободное время займитесь обучением и проектами для гитхаба. С головы брать ничего не нужно - просто сёрфите по проектам и смотрите какая идея приглянется. Далее или клонируете репу или пилите проект по мотивам. Так и портфолио наберете для собеседования, и немного навыки отточите. В конце-концов, попробуйте пилить свои темы для Wordpress, раз он вас так сильно впечатлил - это не сложно и на этом тоже деньги зарабатывают.
    Ответ написан
  • Как авторизоваться в 1C 8.3 из формы на сайте?

    @Dementor Куратор тега 1С
    программист
    Ничего дополнительного не нужно. Это базовый функционал, который хорошо описан и в бумажной, и в электронной документации. Используете для свой опубликованной базы параметры N (для логина) и P (для пароля):
    https://[domain]/[base]/?N=login&P=password
    Ответ написан
  • Как защитить изображения от PrintScreen?

    @Dementor
    программист
    Т.е. скриншотная картинка, которую можно подделать в фотошопе для нотариуса приоритетнее чем фотоснимок экрана с EXIF-данными? Если нотариус принимает для заверения фотоснимок вместо скриншота, то ваша уловка не прокатит при установке выдержки - фотка запечетлит ровно то же, что видит человек. И никакие уловки не помогут.
    Ответ написан
  • Реально ли реализовать интеграцию сайта с 1С Бухгалтерия 6.0?

    @Dementor Куратор тега 1С
    программист
    PHP как и многие другие языки отлично работают с DBF-файлами. Даже в отличии от 1С8, в таблицы более ранних версий можно писать без боязни что-то поломать. Я лично с 6-кой не работал, но без проблем делал интеграцию с базами 7.7 - по содержимому таблиц все достаточно очевидно.
    Ответ написан
  • Как передать файл из 1С на веб-сервер?

    @Dementor Куратор тега 1С
    программист
    Какие есть возможные варианты решения этой задачи?

    Варианты ограничены только принимающей стороной (сайтом). Со стороны 1С никаких затыков не вижу. Даже если есть какие-то экзотические способы передачи (с шифрованием сертификатами, необычные протоколы передачи и пр.), то всегда можно файл сохранить на диск и скормить его путь к внешней програмке, которая в свою очередь реализует необычный протокол передачи.

    А обычно в практике используют следующие четыре варианты обмена файлами:
    1) Отправка по HTTP (метод POST) по аналогии, как вы в браузере прикрепляете файлики на форумах или на почтовых сайтах.
    2) Выгрузка на FTP.
    3) Выгрузка на сетевую шару. Тут или компьютер с 1С или веб-сервер должны иметь скажем VPN-доступ в локалку своего корреспондента.
    4) Отправка по почте. Тут сайт должен иметь доступ к почтовому ящику.

    Самый понятный и легкореализуемый первый вариант. Тут необходимо всего навсего создать объект типа HTTPСоединение (HTTPConnection) и дергнуть его метод ОтправитьДляОбработки (Post).
    Ответ написан
  • Проблема с битриксом и 1с бухгалтерией

    @Dementor Куратор тега 1С
    программист
    А почему не поддерживает?

    А вам станет легче о того, что вы это узнаете? Они банальную ошибку с неправильным content-size в заголовках http-пакетов исправляли больше года. А тут вы им предложите спорную реализацию http-протокола…

    Функционал есть и им можно достичь поставленных целей. Примите как должное, что API именно такое. Или используйте привычные внешние компоненты. На микрософтовском обозревателе не зацикливайтесь — под линукс все реализовано на webkit и скорее всего виндузную версию тоже к нему подтянут (если этого уже не сделали — я в последнее время не следил за их релизами).
    Ответ написан
  • Проблема с битриксом и 1с бухгалтерией

    @Dementor Куратор тега 1С
    программист
    1С-платформа не поддерживает аутентификацию в URL.

    В вашем коде для 1С-Бухгалтерии вы создаете объект HTTPСоединение с указанием в конструкторе вашей строки подключения. Это нормально для GET-аутентификации. Но это не правильно при обычной basic authentication! Посмотрите синтаксис: для логина и для пароля предусмотрены отдельные параметры (а так же свойства, если логин/пароль нужно указать уже после создания экземпляра данного класса).

    Новый HTTPСоединение(<Сервер>, <Порт>, <ИмяПользователя>, <Пароль>, <Прокси>, <ЗащищенноеСоединение>)
    Ответ написан
  • 1С8 -> php сайт?

    @Dementor Куратор тега 1С
    программист
    Выше все верно написано. Подсумирую и дополню.

    1) Самый «простой» вариант — это то, что предлагает фирма 1С. В типовые торговые решения встроен план обмена с сайтом, который выгружает в формате ComerceML данные по товарам, остаткам, резервам и (возможно) по взаиморасчетам. Из сайта загружаются заказы. Обмену штатными средствами задается расписание. По данной схеме работают Bitrix и еще несколько веб-магазинов.

    2) Если есть возможность доработать конфигурацию, то можно реализовать и другие варианты выгрузки нужных данных. Можно поднять веб-сервисы. Если мне память не изменяет, то на дисках ИТС (которые дают в нагрузку ко всем продуктам 1С: Предприятие) есть пример двоих конфигураций, которые обмениваются заказами через веб-сервис.

    3) Если есть возможность создать COM-объект 1С: Предприятия и доступны необходимые познания (или есть программисты), то можно создать (в рамках делигированных прав) все что угодно и получить всю необходимую информацию.

    P.S. На структуру таблиц в СУБД лучше не ориентироваться, так как она не стабильна.
    Ответ написан