Pull to refresh

В двух словах о самом разном

Reading time3 min
Views628
Итак, напишу о том, как пофиксить дрожание в IE при эмуляции position:absolute; (без фоновой картинки), устроить склонение слов, решить проблемы с вопросиками в Mysql и про остальные неважные, но иногда полезные хитрости.
Если Вы матёрый веб-технолог, можете не читать: ничего нового не найдёте.



IE Fixed Fix

Дрожание фиксированного блока, пофиксенного с помощью top:expression() в IE, можно починить так:
body { _filter: true; }

Быстрое создание csv

Сохранить таблицу из Mysql сразу в csv файл (он легко открывается с помощью Excel) можно следующим запросом:
SELECT * INTO OUTFILE '/tmp/table.csv'
FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM users WHERE 1

Окончания #1

Расчет окончаний в Javascript, алгоритм#1

function xform(c, str1, str2, str5) {
c = Math.abs( c ) % 100;
if ( c > 10 && c < 20 ) return str5;
c %= 10;
if ( c > 1 && c < 5 ) return str2;
if ( c == 1 ) return str1;
return str5;
}

Использование:
str = x + xform (x,«яблоко»,«яблока»,«яблок»)

Окончания #2

Расчет окончаний в php, алгоритм#2 (Внимание! подходит только когда количество зашкаливает за 20, например, в блоге)
<?php
$words = array(«слов», «слово»,«слова»,«слова»,«слова»,«слов»,«слов», «слов», «слов», «слов»);

//Использование:
$a=71;
print $words[substr($a,-1)];
?>

Хабрасообществом решено, что алгоритм-говно.
Из преимуществ: отсутствие всяких If-ов, и вообще просто, как пенёк.

Mysql и даты

Вставлять даты в MySQL запросах можно так:
INSERT into `dates` (dat) values (STR_TO_DATE('12-31-2004','%m-%d-%Y'))

Экранирование кавычек

Если Вы недавно (или давно) перешли на php5 denwer 3 с denwer-а 2, или перешли на новый хостинг и у вас в скриптах вместо строк вроде «строч'ка» начали появляться «строч\'ка», то поможет строка в .htaccess:
php_flag magic_quotes_gpc off
php_flag magic_quotes_runtime off
Только будьте аккуратны, чтобы Вам сайт не поломали.
(Ну или поправьте скрипт)

«Вопросики»

Если внезапно скрипт «вместо символов начал выводить вопросики, а кодировка стоит cp1251, но всё равно вопросики», то в файле $config.php (он у вас есть, я уверен) пропишите

mysql_select_db($database );

mysql_query («set character_set_client='cp1251'»);
mysql_query («set character_set_results='cp1251'»);
mysql_query («set collation_connection='cp1251_general_ci'»);
Переходите на utf

Выделение текста в IE

Если в свёрстанном макете при выделении текста в IE выделяется полстраницы вместо нужного текста, помогает строчка в начале страницы:
<?XML VERSION=«1.0» ENCODING=«windows-1251»?>
(Я понимаю, что это быдлометод, но он работает)
Альтернативный метод:
«Используйте body{position: relative;} проще и безобиднее.», спасибо Chizh

Опять кодировки

Если в PHP вам в переменную попала строка, например, такая:
«РЅРµС‚ безумным РЅРёРіРґРµ РїРѕРєРѕСЏ» (это бывает, когда Opera отправляет данные через XMLHttpRequest),
то поможет функция
function Encode ( $str, $type )
{
static $conv='';
if (!is_array ( $conv ))
{
$conv=array ();
for ( $x=128; $x <=143; $x++ )
{
$conv['utf'][]=chr(209).chr($x);
$conv['win'][]=chr($x+112);
}
for ( $x=144; $x <=191; $x++ )
{
$conv['utf'][]=chr(208).chr($x);
$conv['win'][]=chr($x+48);
}
$conv['utf'][]=chr(208).chr(129);
$conv['win'][]=chr(168);
$conv['utf'][]=chr(209).chr(145);
$conv['win'][]=chr(184);
}
if ( $type=='w' )
return str_replace ( $conv['utf'], $conv['win'], $str );
elseif ( $type=='u' )
return str_replace ( $conv['win'], $conv['utf'], $str );
else
return $str;
}



Вызывается так:
$str= Encode($str,'w');

Удалённая правка Mysql

Если надо поправить базу данных, phpMyAdmin вызывает рвоту (иногда бывает, да), а Mysql порт закрыт, то качаем navicat, берём файл ntunnel_mysql.php из папки, куда его установили, заливаем на сервер, и в свойствах подключения указываем адрес.
Программа 30 дней работает. (я на ней учился кряки писать, но кряк, конечно, не распространял и им не пользовался)

UPD: Русскоязычные поддомены

Чтобы сделать русскоязычный поддомен 3 уровня, надо:
1. Открыть Firefox, впечатать в адресную строку чтото вроде: хабрахабр.ru
2. Firefox напишет, что «Firefox не может найти сервер www.xn--80aaacc1gd7ae.ru
3. Создаёте поддомен с именем «xn--80aaacc1gd7ae». Работает в некоторых блого-сервисах, где имя пользователя это поддомен.
Пример: дамирко.ramainen.ru

Пару слов о MS Word

Напоследок немного информационного мусора:
Чтобы выдернуть картинки из файла .docx или .pptx, можно переименовать их в файл .zip и открыть любым архиватором.
В архиве, помимо всего прочего, будут лежать картинки.
Чтобы в Word 2003 или Word XP открывать файлы docx (Word 2007), установите расширение FileFormatConverters, устанавливается поверх Office, и тот начинает понимать новый формат.

Важные новости

А ещё в cmd.exe есть калькулятор:
Z:>set /a 1+1
Tags:
Hubs:
+68
Comments53

Articles