Default Green Orange
Gemini_13's Blog
Блокнот полезных вещей
Home
    • Карта сайта
    • Обо мне
RSS

Archive for Февраль, 2013

Результат запроса MySQL передать в CSV на PHP

Скрипты 0 Comment »

Случилось так, что потребовалось мне передавать результаты запроса в csv-файлы. Вроде ничего сложного, но столкнулся с этим я впервые и, как оказалось, информации в интернете много, но не вся подходит. Поэтому и решил написать эту заметку в блокнот.

Собственно пример:

$file = '/tmp/stats.csv';
$result = mysql_query("SELECT * FROM managers")
ob_start();
$csv = fopen($file, 'w');
while($row = mysql_fetch_assoc($result))
{
	fputcsv($csv, $row, ';');
}
fclose($csv);
ob_get_clean();

Название папки и файла написано для примера.
Еще одно важное замечание… Для корректного отображения файла в него нужно писать в кодировке cp1251, иначе будут каракули, если БД отдает в другой кодировке (исключение — латинские символы).


26 февраля, 2013  
Tags: csv, export, php, php to csv, script, результат в csv, скрипт



Размер папок в текущей директории (Linux)

Linux, Настройка сервера, Разное 0 Comment »

Время от времени приходится смотреть сколько весит та или иная папка, почему в разделе столько мало осталось места и тп. Вот одна из команд, которая поможет получить такие ответы. Достаточно зайти в папку и ввести ее. В консоле получите нечто такого плана:

# du --si --max-depth=1
0       ./sys
4,1k    ./mnt
213k    ./dev
30M     ./etc
117M    ./lib
6,1M    ./bin
205k    ./srv
16M     ./boot
591M    ./var
17k     ./lost+found
3,2G    ./home
17k     ./media
2,5M    ./lib32

Это не есть какая-то мегакрутая команда, а просто еще одна из них. Это же блокнот… 😉


19 февраля, 2013  
Tags: debian, du, linux, объем, объем папок, размер, размер папок



Dagon Design Sitemap Generator и qTranslate: решение проблемы

Скрипты 0 Comment »

Для WordPress-а существует замечательный плагин карты сайта, который выводит страницы, записи, категории и тп. Называется он Dagon Design Sitemap Generator. Покорило меня в нем возможность вывода заметок с категорий, до этого я не видел такой возможности в других плагинах (да и не искал особо). Но в нем был один небольшой баг, он не умел работать с плагином qTranslate, который использовался на одном из разрабатываемых мной проектов. Вывод заголовков выглядел таким образом:

<!--:ru-->О нас<!--:--><!--:en-->About us<!--:--><!--:de-->Über uns<!--:-->

Сами видите какой ужас, но на форуме wordpress.org решение уже было. Однако, оставался второй баг — не менялись названия рубрик (категорий) и на этот вопрос ответа я не нашел, но придумал сам.

Все изменения будем делать в sitemap-generator.php.

1. Исправляем ошибки с названиями страниц и заметок:
Найти:

$the_title = htmlspecialchars(trim($page_data[$p]['title']));

Заменить на:

$the_title = htmlspecialchars(trim(__($page_data[$p]['title'])));

Найти:

$the_title = htmlspecialchars(trim($post_data[$p]['title']));

Заменить на:

$the_title = htmlspecialchars(trim(__($post_data[$p]['title'])));

Read the rest of this entry »


13 февраля, 2013  
Tags: Dagon Design, php, plugin, qTranslate, script, Sitemap Generator, wordpress, вордпресс, карта сайта, скрипт



Монтирование сетевого диска с автозагрузкой на Debian 6

Linux, Настройка сервера, Разное, Скрипты 0 Comment »

У меня в одной сети с сервером есть в распоряжении NAS, разделы которого я хотел смонтировать на сервере. Сам того не ожидая столкнулся с трудностью, а именно тем, что во время загрузки сервера в случае ребута или простого включения разделы не могли быть примонтированы из-за того, что на этом этапе сеть еще не подключена. Нашел в сети некие танцы с бубном с переименованием файлов в rc6.d, но мне это не понравилось и я решил пойти по другому пути, на мой взгляд, более универсальному и простому.
Идея заключалась в том, чтобы создать скрипт и поместить его в init.d. Вот, что я сделал…

Исходные данные:

  • Ось на сервере — Debian 6
  • IP NAS-а — 192.168.0.113
  • Расшаренные нужные папки: Files, Downloads и Public

1. Создадим папку и подпапки для монтирования. Наперед скажу, что согласен с мнением, что достаточно создать одну папку и примонтировать к ней весь нас не углубляясь в подпапки, но мне нужны быть только три папки из всех.
Read the rest of this entry »


11 февраля, 2013  
Tags: cifs, debian, init.d, mount, nas, script, монтирование, папка в сети, сетевой диск



Статистика Nginx с помощью модуля Stub Status

Linux, Настройка сервера 0 Comment »

От нечего делать гуглил маны по Nginx, т.к. только начинаю с нем разбираться. Натолкнулся на модуль Stub Status. Стоит у меня Debian 6 и Nginx 1.2.6.

Открываем файл конфигурации хоста (или основной nginx.conf) и добавляем небольшие настройки:

location = /nginx {
	stub_status on;
	access_log  off;
#	Если хотим дать доступ только конкретному IP, то раскомментируем
#	allow XXX.XXX.XXX.XXX;
#	deny all;
}

Теперь перейдя на страницу http://g13.org.ua/nginx можно увидеть статистику приблизительного такого формата:

Active connections: 14 
server accepts handled requests
 352 352 886 
Reading: 4 Writing: 1 Waiting: 9

Read the rest of this entry »


8 февраля, 2013  
Tags: debian, nginx, stab_status, stub status, статистика



Установка PHP 5.4 на Debian 6

Linux, Настройка сервера 2 комментария »

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

1. Добавляем репозитарии

nano /etc/apt/sources.list

В конец файла вставляем:

deb http://packages.dotdeb.org squeeze all
deb-src http://packages.dotdeb.org squeeze all

# PHP 5.4 for Debian 6
deb http://packages.dotdeb.org squeeze-php54 all
deb-src http://packages.dotdeb.org squeeze-php54 all

2. Получаем и добавляем ключи доступа к репозиторию GnuPG key

wget http://www.dotdeb.org/dotdeb.gpg
cat dotdeb.gpg | apt-key add -

Read the rest of this entry »


5 февраля, 2013  
Tags: debian, dotdeb, php, php5



  • Рубрики

    • FreeBSD (20)
    • Linux (46)
    • MySQL (11)
    • Windows (14)
    • Железо (3)
    • Мои моды к TorrentPier II (16)
    • Настройка сервера (49)
    • Разное (33)
    • Скрипты (30)
  • Свежие записи

    • Поля форм на Yii2: textInput(), passwordInput() и hiddenInput()
    • Поля форм на Yii2: CheckboxList()
    • SpeedTest датацентров Digital Ocean
    • Патчим Gearman на Debian
    • nginx + Apache 2.4 и REMOTE_ADDR (решение проблемы)
    • Создание и подключение swap-файла в Debian
    • Запуск PhpStorm 9 x64 на Windows
    • Рекурсивная замена прав доступа для папок и файлов в Linux
    • VirtualBox 5 + phpVirtualBox на Debian 8.2 (jessie)
    • Обработка сессий PHP с помощью Redis + phpredis на Debian 7.8
  • Ссылки

    • My GitHub
  • Архивы

    • Июнь 2016 (2)
    • Март 2016 (2)
    • Январь 2016 (3)
    • Ноябрь 2015 (2)
    • Август 2015 (1)
    • Февраль 2015 (1)
    • Январь 2015 (7)
    • Октябрь 2014 (1)
    • Июнь 2014 (1)
    • Май 2014 (1)
    • Апрель 2014 (7)
    • Февраль 2014 (9)
    • Январь 2014 (5)
    • Декабрь 2013 (7)
    • Ноябрь 2013 (1)
    • Октябрь 2013 (3)
    • Август 2013 (4)
    • Июль 2013 (4)
    • Июнь 2013 (3)
    • Апрель 2013 (2)
    • Март 2013 (2)
    • Февраль 2013 (6)
    • Январь 2013 (2)
    • Декабрь 2012 (1)
    • Ноябрь 2012 (2)
    • Октябрь 2012 (7)
    • Сентябрь 2012 (22)
Все права защищены © 2013 Gemini_13's Blog
G13.org.ua