Ноябрь 2014 — Web-coding

LoadeR 27 ноября 2014

Если в базе MYSQL поле имеет формат DATE , то данные в нем храняться в формате 0000-00-00 (т.е год - месяц - день).
И, когда выводишь в скрипте это на экран, то не всегда удобно читать например 2014-11-27 , а хочется видеть
27-11-2014. Следующая простенькая функция решает эту проблему

<?php
    //На вход подаем $fromMysqlDate - что считалось из базы
function convertDate($fromMysqlDate){
 $date = strtotime($fromMysqlDate);//Конвертируем дату в Unix формат
 $date = date('d-m-Y',$date); //Извлекаем из формата Unix дату в нужном нам виде
  return $date;
            }
?>

Еще проще этот вопрос можно решить прямо в запросе в базу, используя функцию DATE_FORMAT в Mysql.

Запрос будет таким ( в данном случае таблица называется sc_orders а поле дыты - order_time)

модификаторы %d %m %y можно менять местами как и менять символы между ними "-" на свои, например "/" или ":"

    SELECT DATE_FORMAT(`order_time`, '%d-%m-%Y') FROM `sc_orders` ;

Кому как нравиться ......

Теги: PHP

LoadeR 17 ноября 2014

Иногда, при импорте через phpMyAdmin в базу данных MySql дампа относительно большого размера, случается проблема timeout. Бывает,что манипуляции с увеличением размера принимаемых сервером данных и таймаутом не помогают. Часто, выходом из этого (без разбиения процедуры импорта на части), является импорт прямо через демон Mysql:

Если мы в windows и текущий пользователь User_main и файл dump_file.sql

лежит в C:\Documents and Settings\User_main, тогда делаем так :


Пуск -> Выполнить -> cmd ->

C:\Documents and Settings\User_main>
mysql -u имя_пользователя -pПАРОЛЬ имя_базы < dump_file.sql

путь до dump_file.sql нужно указывать полный(физический путь), например: D:/data/dump_file.sql

При работе с удаленным сервером все примерно тоже с небольшой вариацией (тут описана конфигурация хостинга с отдельным физическим сервером Mysql). Сначала через Putty соединяемся с сервером хостинга по SSH, затем конектимся к серверу mysql:

mysql -u (username) -p(password) -D (base_name) -h (host);

При удачном соединении видим что-то типа этого

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 19
Server version: 5.5.15 MySQL Community Server (GPL)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

затем, находясь в командном интропритаторе mysql просим, вывести список баз командой show databases:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| base1              |
| base2              |
| my_base            |
| base3              |
+--------------------+
5 rows in set (0.00 sec)

Далее выбираем нужную командой use (в нашем случае my_base), видим подтверждение, что база выбрана - вторая строка Database changed, и импортируем в нее файл dump.sql командой source. Файл я предварительно закинул по ftp в корень сервера, поэтому тут пример без пути до него

mysql> use my_base;
Database changed
mysql>source dump.sql;

Такие манипуляции вынудило меня делать upgrade одной таблицы в базе, размер дампа которой стал 5,7 Mb и содержала она порядка 25 000 строк. Стандартный хостинговский php-Myadmin c этим уже "не справлялся"

Теги: Mysql

LoadeR 10 ноября 2014

Продолжаем исследовать новый shop-script5...

{$wa_url} - указывает на корень

{$wa_app_static_url} - указывает на путь приложения, в "котором" мы сейчас находимся, т.е если надо

вызвать какую-то например картинку в папке img плагина магазина то путь к ней будет таким

    {$wa_app_static_url}plugins/имя_плагина/img/picture.jpg

{wa_backend_url} - каталог админки

Теги: shop-script 6

LoadeR 7 ноября 2014

В скриптах магазина (shop) движка WEBASYST вексии 3.0 есть несколько констант smarty, указывающие на основные каталоги :


1. {$smarty.const.CONF_FULL_SHOP_URL} - указывает на корень магазина с папками

DATA DBLIST HELP I2 INCLUDES INSTALLER KERNEL LOGIN PUBLISHED SHOP SYSTEM TMP

путь до папки PUBLISHED например надо указать так {$smarty.const.CONF_FULL_SHOP_URL}published/

2. {$smarty.const.URL_JS} - указывает на папку JS по пути

PUBLISHED/SC/HTML/SCRIPTS/JS

если внутри нее поместить еще одну папку - например jquery, надо путь указать так:

{$smarty.const.URL_JS}/jquery/

3.{$smarty.const.URL_ROOT}

4.{$smarty.const.URL_CSS}

5.

Теги: WEBASYST 3.0