Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?
- /*
- ### ВНИМАНИЕ! Для того, что бы этот скрипт заработал, необходимо поставить ему расширение .php
- ###
- ### Скрипт выводит состояние склада по запрашиваемым позициям
- ### для поисковой системы eFind.ru согласно спецификации.
- ###
- ### Версия: 0.1 (12.04.2007)
- ###
- ###
- ### Параметра вызова:
- ### Поисковый запрос передается в параметре search
- ### Метод: GET
- ### Кодировка запроса: UTF-8
- ### Кодировка ответа: Windows-1251
- ###
- ###
- ### Формат базы данных:
- ### partname - название позиции (обязательное поле)
- ### mfg - производитель
- ### note - описание
- ### pdf - ссылка на PDF
- ### img - ссылка на изображение
- ### p1 - розничная цена
- ### p2 - мелкооптовая цена
- ### p3 - оптовая цена
- ### stock - состояние склада (количество позиций на складе или срок поставки)
- ###
- */
- $host = 'localhost'; # Адрес MySQL сервера, например: mysql.mysite.com
- $user = 'admin'; # Имя пользователя базы данных, например: user_stock
- $pass = 'admin'; # Пароль пользователя, например: MswZ2Qs
- $base = 'test136'; # Название базы данных, например: store
- // $tables = 'jos_vm_product, jos_vm_product_price,jos_vm_product_mf_xref,jos_vm_manufacturer'; # Название таблицы с данными, например: stock
- $cond = 'jos_vm_product_price.product_id= jos_vm_product.product_id and jos_vm_product_price.product_id=jos_vm_product_mf_xref.product_id and jos_vm_manufacturer.manufacturer_id=jos_vm_product_mf_xref.manufacturer_id'; #условия для содинения таблиц
- $fields ='product_name,product_desc,product_price,product_currency,mf_name'; #поля: название детали, описание, розничная цена, валюта, производитель
- //$fields_create ='product_name,product_desc,product_price,product_currency,mf_name'; #поля: название детали, описание, розничная цена, валюта, производитель
- // тестовая таблица
- $tables = 'sdelka_temp';
- $fields_create ='`n1` VARCHAR(64) NOT NULL,`n2` VARCHAR(64),`n3` TINYTEXT,`n4` INT(15)';
- $file = "logdump.txt"; // Некоторый файл
- $fh = fopen($file, "w") or die("Не могу создать файл логов!");
- // Проверка существования файла
- $filename = 'dump.csv';
- if (!file_exists($filename)) {
- fwrite($fh, "Файл дампа не найден" . "\r\n");
- fclose($fh);
- exit;
- }
- if(($dbh = mysql_connect($host, $user, $pass))=== FALSE)
- # Если не удалось соединиться с базой данных, выводим ошибку и выходим
- {
- fwrite($fh, "Невозможно присоединится к базе" . "\r\n");
- fclose($fh);
- exit;
- }
- # Установка текущей базы данных
- mysql_select_db($base, $dbh);
- # Если при запросе возникла ошибка, выводим соответствующее сообщение и выходим
- if(mysql_errno() > 0)
- {
- fwrite($fh, 'Невозможно выбрать базу данных' . "\r\n");
- mysql_close($dbh);
- fclose($fh);
- exit;
- }
- //$sth = mysql_query("DROP TABLE IF EXIST $tables");
- $sth = mysql_query("CREATE TABLE `".$tables."`($fields_create) ");
- # Если при запросе возникла ошибка, выводим соответствующее сообщение и выходим
- if(mysql_errno() > 0) {
- fwrite($fh, 'Таблица существует, все ок ' . "\r\n");
- $sth = mysql_query("DELETE FROM `".$tables);
- } else
- {
- fwrite($fh, "CREATE TABLE `".$tables."`( $fields_create )" . "\r\n");
- fwrite($fh, 'Таблица создана' . "\r\n");
- }
- if ( ($handle_o = fopen($filename, "r") ) !== FALSE ) {
- // читаем первую строку и разбираем названия полей
- $columns_o = fgetcsv($handle_o, 1000, ";");
- foreach( $columns_o as $v ) {
- $insertColumns[]="`".addslashes(trim($v))."`";
- }
- $columns=implode(',',$insertColumns);
- while ( ($data_o = fgetcsv($handle_o, 1000, ";")) !== FALSE) {
- $insertValues = array();
- foreach( $data_o as $v ) {
- $insertValues[]="'".addslashes(trim($v))."'";
- }
- $values=implode(',',$insertValues);
- $sth = mysql_query("INSERT INTO `".$tables."` ( $columns ) VALUES ( $values )");
- # Если при запросе возникла ошибка, выводим соответствующее сообщение и выходим
- if(mysql_errno() > 0)
- {
- fwrite($fh, "INSERT INTO `".$tables."` ( $columns ) VALUES ( $values )" . "\r\n");
- fwrite($fh, 'SQL ERROR:'.mysql_error());
- fclose($fh);
- exit;
- }
- }
- mysql_close($dbh);
- fclose($handle_o);
- }
- else {
- fwrite($fh, "Файл дампа невозможно открыть для чтения" . "\r\n");
- fclose($fh);
- exit;
- }
- fclose($fh);
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement