Сообщения

Сообщения за 2012

Linux: вывести на печать определенные строки (bash, linux)

Всем привет. Например, Вам нужно вывести на печать определенные строки. Будь то в файл или на экран. Надеюсь Вы уже знаете как найти нужные Вам строки. Если нет, то подскажу, для этого Вам поможет команда grep  и egrep.  А вывести нужные строки на экран, Вам поможет функция  sed. Вывод на печать определенные строки Например Вам нужно вывести 100-120 строки на экран: sed -n '100,120p' some_file.txt (вывести на печатать строки с 100 по 120) Есть немного измененный вариант, который работает немного быстрее: sed -n '121q;100,120p' some_file.txt Ну вот и все, ах да. Если вы хотите вывести определенные строки в файл , то вам нужно в конце просто добавить:  > res_file.txt Вышеуказанный пример полностью будет выглядеть следующим образом: sed -n '121q;100,120p' file.txt > res_file.txt Вот и все. Теперь Вы умеете выводить нужные строки на печать или в файл . linux, bash

Как увеличить max_allowed_packet (Linux, Debian)

Нужно увеличить максимально возможный размер SQL-файла при его выполнении на сервере? Вам нужно изменить файл: my.cnf Откройте его:  nano /etc/mysql/my.cnf Увеличить  max_allowed_packet  Найдите там [mysqld]  на следующей строке добавьте: max_allowed_packet = 64M Если такая строка уже там существует, то просто измените размер (указывается в мегабайтах). После всего вышеперечисленного просто перезагрузите mysql-сервер: /etc/init.d/mysql restart mysql, linux, debian,  max_allowed_packet  

INSERT ... ON DUPLICATE KEY UPDATE или Как вставить строку если она не существует и обновить в противном случае (MySQL)

Добрый день ) Уважаемые программисты, наверняка каждый из Вас сталкивался с проблемой вставки данных в БД, если строки не существует и обновление ее, если таковая уже есть. Как вставить данные в базу данных MySQL, если их не существует и обновить в противном случае Наверняка Вы часто использовали конструкцию типа: $result  =  mysql_query ( "SELECT `uid`, `text` FROM `t_userinfo` WHERE `uid`='". $uid ."'" ); if ( mysql_num_rows ( $result ) >0 ) { // Если строка имеется, то обновляем    mysql_query ( "UPDATE `t_userinfo` SET `text`='". $newtext ."' WHERE `uid`='". $uid ."'" ) ; } else { // Если строки нет, то добавляем новое значение в БД    mysql_query ( "INSERT INTO `t_userinfo` SET `text`='". $newtext ."',`uid`='". $uid ."'" ) ; } Немного муторно, не правда ли? И производительность немного страдает, все таки столько действий. Допустим, что эта таб

Архивация файлов или как запаковать и распаковать файлы в Linux

Всем привет ) Не буду писать длинные петиции вступления. Вот основные команды работы с архивами: Архив RAR Как запаковать файлы в rar или создать архив rar (rar-архив): rar a -m5 'имя нового архива' 'имя файла/папки' Имя файла и/или папки можно перечислять через запятую Как распаковать архив rar: unrar x 'имя архива.rar' Архив ZIP Как запаковать файлы в zip или создать архив zip (zip-архив): zip -r -9 'имя нового zip-архива' 'имя файла/папки' Как распаковать zip-архив: unzip 'имя zip-архива' Архив TAR Как запаковать файлы в tar или создать архив tar (tar-архив): tar -cvf 'имя нового tar-архива' 'имя файла/директории' Как распаковать tar-архив или извлечь файлы из tar-архива: tar -xf 'имя tar-архива' Архив GZIP / gz Как запаковать файлы в gz или создать архив gzip (gzip-архив): tar -zcvf 'имя нового gzip-архива' 'имя файла/директории'

Проверка на существование js функции (JavaScript)

Привет! Например, Вам необходимо узнать, существует ли функция, чтобы выполнить ее. Проверить на существование функцию js, можно простым способом: if ( typeof myFunc == 'function' ) { // Функция myFunc существует / / Вызываем функцию myFunc ( ) ; } Все очень просто. Вот так и проверяется существование функции JavaScript. javascript, js

Конвертировать RGB в HEX (PHP, Программирование)

Например, Вам необходимо конвертировать RGB-значение в шестнадцатеричный формат. Вам поможет следующая функция: function getHexByRGB($r,$g,$b) {    return  sprintf ( '#%02x%02x%02x' ,  $r ,  $ g ,  $ b ); } Тут все гениально и просто.  Функция sprintf  возвращает значение, которое получается при помощи определенного форматирования. Здесь "%02" — это минимальная ширина выводимого числа, т. е. вместо “8” будет получено “08”; “x” — вывод числа в шестнадцатеричном формате. Подробнее о функции sprintf можно посмотреть на  php.net . Также можно немного видоизменить функцию, принимая массив: function  getHexByRGB($rgb) {   if (!is_array($rgb) return false ;    return  sprintf ( '#%02x%02x%02x' ,  $rgb[0] ,  $r gb[1] ,  $rg b[2] ); } php, программирование

Как ограничить доступ к сайту или отладка сайта на бою (PHP)

Если Вы создаете сайт, вам наверное часто приходилось что-то делать на сайте во время его работы, то есть "на бою". Но что делать, если Вы хотите видеть, что  ремонтируете, делаете, создаете, а пользователи этого видеть не должны. Есть и тут решение. Ограничивать доступ по IP. Делается это очень просто. Ограничить доступ к сайту по IP 1. Узнайте свой IP-адрес. Это можно сделать, например, на сайте  myip.ru . Там на главной странице сразу пишут ваш IP адрес. 2. Добавить код PHP: if ($_SERVER['REMOTE_ADDR']=="127.0.0.1") {   echo "Этот код вижу только Я"; } Если ваши IP постоянно меняются, но вы их все знаете, или Вы хотите открть доступ для нескольких IP, то поможет следующая конструкция: if (in_array($_SERVER['REMOTE_ADDR'], array("127.0.0.1","127.0.0.2","127.0.0.3"))) {   echo "И этот код тоже вижу только Я"; } Функция in_array  на php.net php Как ограничить дост

Как включить отображение ошибок на сайте (PHP)

Вы создаете сайт, и Вам нужно узнать какие ошибки возникают в ходе работы? Это можно легко сделать при помощи следующего кода: <?php ini_set('display_errors', "1"); error_reporting(E_ALL); Выключить же тоже не составляет никакого труда. <?php ini_set('display_errors', "0"); error_reporting(0); Вот так, легко и просто можно задать вывод ошибок.

Запрет индексации конкретной динамической страницы

Например, Вам нужно, чтобы конкретная страница Вашего сайта была закрыта для индексации поисковых систем, таких как Google, Яндекс и т.д. Запрет индексации файла   Запрет индексации папки (директории)   Запрет индексации всего сайта   Запрет индексации сайта роботом Google и/или Яндекс   Запрет от индексации конкретной динамической страницы Вы легко можете произвести изменения в robots.txt: Запрет индексации файла User-agent: *  # для всех поисковиков Disallow: /file.html Тем самым вы запретили всем поисковикам индексировать файл (страницу) file.html . Запрет индексации папки (директории) User-agent: * Disallow: /pictures/ Тем самым вы запретили всем поисковикам индексировать папку pictures . Запрет индексации всего сайта User-agent: * Disallow: / Данные примеры запрещают индексировать  страницы  (папки) всем сайтам. Вы также можете запретить индексировать страницы (сайт) каком-то конкретному поисковику. Например: Запрет индексации сайта

Не работает json_encode или Почему json_encode возвращает NULL (php)

Здравствуйте. Недавно столкнулся с проблемой парсинга JSON методом json_encode . JSON приходит правильный. неоднократно проверял, в чем проблема понять не могу. Оказывается все очень просто (ну или почти просто). Как я понял, JSON должен иметь кодировку UTF-8 . Такая ошибка возникает, если Вы отправляете JSON в другой кодировке, например в windows-1251 (cp1251). 1. При получении конвертировать данные в utf-8 при помощи iconv. $json_obj = json_decode (iconv("windows-1251","utf-8", $_POST [' json_data '])); Кстати, чтобы тип у $json_obj был не oject , а array , нужно указать в json_decode второй параметр в значение true . $json_arr  = json_decode (iconv("windows-1251","utf-8", $_POST [' json_data ']), true ); 2. Перед отправкой данных экранировать данные методом urlencode(); Хотя в принципе нормальный упаковщик JSON должен прогонять все данные через urlencode. 3. Если Вы передаете данные целиком из БД. То пер

Как подсчитать количество элементов в Object (JavaScript)

Часто мы ищем слишком сложные пути, чтобы решить довольно простую задачу. Чтобы подсчитать количество элементов типа Object в JavaScript. Нужно всего лишь пройтись по всему объекту и подсчитать. Можно конечно проверить также является ли входящая переменная типом Object. Код: <script type="text/javascript"> function countOfOject (obj) { var t = typeof (obj); var i=0; if (t!=" object " || obj== null ) return 0; for ( x in obj) i++; return i; } </script> Пример использования: <script type="text/javascript"> var obj = {}; // Создаем объект obj[ 1 ] = {name: " John ",age: 23 }; // Добавляем к объекту данные obj[ 2 ] = {name: " Fedor ",age: 45 }; obj[ 3 ] = {name: " Ivan ",age: 34 }; alert(" Count= "+countOfOject(obj)); // Выводим результат </script> Данная функция также вычислит количество элементов типа Array. Но для этого дела уже существует length.