JS Простое drop-down меню

Есть множество вариантов выпадающих меню, но вот это мне нравиться больше всего, в первую очередь за простоту. И так, все что вам нужно, это скачать вот этот скрипт и вот этот css. Далее между <head></head>:

<link rel="stylesheet" type="text/css" href="/css/drop.css" />
<script type="text/javascript" src="/js/drop.js"></script>

Описание самого меню :

<ul id="sddm">
<li><a href="#"
onmouseover="mopen('m1')"
onmouseout="mclosetime()">Home</a>
<div id="m1"
onmouseover="mcancelclosetime()"
onmouseout="mclosetime()">
<a href="#">HTML Drop Down</a>
<a href="#">DHTML Menu</a>
<a href="#">JavaScript DropDown</a>
<a href="#">Cascading Menu</a>
<a href="#">CSS Horizontal Menu</a>
</div>
</li>
<li><a href="#"
onmouseover="mopen('m2')"
onmouseout="mclosetime()">Download</a>
<div id="m2"
onmouseover="mcancelclosetime()"
onmouseout="mclosetime()">
<a href="#">ASP Dropdown</a>
<a href="#">Pulldown menu</a>
<a href="#">AJAX Drop Submenu</a>
<a href="#">DIV Cascading Menu</a>
</div>
</li>
<li><a href="#">Order</a></li>
<li><a href="#">Help</a></li>
<li><a href="#">Contact</a></li>
</ul>
<div style="clear:both"></div>

Демку вы сможете посмотреть здесь

Взято с javascript-array.com

Удаление пустых каталогов и подкаталогов через CMD

Для этого, вы можете воспользоваться следующим скриптом:

goto start
:REFcmd
for /d %%i in («%~1\*») do (call :REFcmd «%%i» & rd /q «%%i»)
exit /b
:start
call :REFcmd «D:\»

Назовите его ref.cmd, а чистить мы будем диск D:

Bash скрипт ротации файлов

Данный скрипт поддерживает историю за последние 7 дней. Как пример, tar-ом будем упаковывать папку /var/www/repository  и удалить все файлы старше 7 дней.

#!/bin/bash
# Date
fecha=`date +"%d-%m-%Y"`
# Backup and gzip the directory
tar zcvf /back/trunk-$fecha.tgz /var/www/repository
# Rotate the logs, delete older than 7 days
find /backups/ -mtime +7 -exec rm {} \;

Нотариусы Москвы — сайт, где есть все нотариусы.

Bash скрипт универсальный распаковщик

Надоело мне для каждой программы сжатия использовать свои программы и ключи, и вылился этот порыв вот в такой скрипт:

#!/bin/bash
#
#

Z="compress -d"
gz="gunzip"
bz="bunzip2"
zip="unzip -qo"
rar="unrar x -id -y"
tar="tar xf"
7z="p7zip -d"

if [ $# -eq 0 ]; then
    echo "Usage: decompress file or files">&2
    exit 1
fi

for name
do
	if [ ! -f "$name" ] ; then
		echo "$0: file $name not found." >&2
		continue
	fi

	if [ "$(echo $name | egrep '(\.Z$|\.gz$|\.bz2$|\.zip$|\.rar$|\.tar$|\.tgz$|\.7z$)')" = "" ] ; then
		echo "Skipped file ${name}: it's already decompressed." 
      		continue
	fi

	extension=${name##*.}

	case "$extension" in
		Z ) echo "Filetype is Z. Decompressing..."
		    $Z "$name"
		    ;;
		gz ) echo "Filetype is gz. Decompressing..."
		     $gz "$name"
		     ;;
		bz2 ) echo "Filetype is bz2. Decompressing..."
 		     $bz "$name"
		     ;;
		zip ) echo "Filetype is zip. Decompressing..."
		      $zip "$name"
		      ;;
		rar ) echo "Filetype is rar. Decompressing..."
		      $rar "$name"
		      ;;
		tar ) echo "Filetype is tar. Decompressing..."
              	      $tar "$name"
              	      ;;
		tgz ) echo "Filetype is tgz. Decompressing..."
              	      $tar "$name"
                     ;;
               7z ) echo "Filetype is 7z. Decompressing..."
                     $7z "$name"
	esac

done

exit 0


Php Определяем IP-адрес пользователя учитывая прокси сервер

Эта функция просто выручила меня недавно. В одном из локальных проектов необходимо было фиксировать ip адреса пользователей, но вот проблема, компания очень большая, и выходят пользователи через проксю. Так вот при помощи этой функции можно узнать настоящий ip

<?php
function getip()
{
if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown"))
$ip = getenv("HTTP_CLIENT_IP");

elseif (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown"))
$ip = getenv("HTTP_X_FORWARDED_FOR");

elseif (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))
$ip = getenv("REMOTE_ADDR");

elseif (!empty($_SERVER['REMOTE_ADDR']) && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))
$ip = $_SERVER['REMOTE_ADDR'];

else
$ip = "unknown";

return($ip);
}
?>

Pph Конвертер win1251 в utf8

Функция преобразования кодировки текста из win-1251 в utf-8. Во входной параметр подаем текс который необходимо конвертировать

<?php 
function convert($text)
{
$tmp="";
for($i=0, $m=strlen($text); $i< $m; $i++)
{
$char=ord($text[$i]);

if ($char<=127) {$tmp.=chr($char); continue; }
if ($char>=192 && $char< =207)    {$tmp.=chr(208).chr($char-48); continue; }
if ($char>=208 && $char< =239) {$tmp.=chr(208).chr($char-48); continue; }
if ($char>=240 && $char< =255) {$tmp.=chr(209).chr($char-112); continue; }
if ($char==184) { $tmp.=chr(209).chr(145); continue; };
if ($char==168) { $tmp.=chr(208).chr(129);  continue; };
}
return $tmp;
}
?>

Bash Авто перезапуск процесса

Простой скрипт который вы можете поставить в cron для перезапуска процесса.

#!/bin/bash
PGREP="/usr/bin/pgrep"
RUN=$1

$PGREP ${RUN}

if [ $? -ne 0 ]
then
$2
fi

Использовать его не сложно, первым идет название процесса за которым мы следим, вторым — команда на перезапуск, как пример, пусть скрипт называется restart.sh, а проверят мы будем Apache. Тогда в cron добавляем:

*/5 * * * * /restart.sh httpd ‘service httpd restart’ &> /dev/null

PhP отсылаем уведомление по электронной почте

Для начала давайте расмотрим, самый распространенный способ отправки почты, при помощи функции mail():

<?php   
$To = 'recepient@yourdomain.com';   
$Subject = 'Тема письма';   
$Message = 'Текс сообщения';   
$Headers = 'From: sender@yourdomain.com \r\n' .   
 'Reply-To: sender@yourdomain.com \r\n' .   
 'Content-type: text/html; charset=UTF-8 \r\n'; 
     
mail($To, $Subject, $Message, $Headers);   
?>

Continue reading

Bash Ping Скрипт

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

#!/bin/bash
#
# имя хоста или IP
HOSTS="teaseo.ru"
# Количество запросов
COUNT=4
for myHost in $HOSTS
do
count=$(ping -c $COUNT $myHost | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
if [ $count -eq 0 ]; then
# 100% failed
echo "Host : $myHost is down (ping failed) at $(date)"
fi
done

Bash Проверка, содержит ли строка файла букву или буквосочетание.

Данный скрипт можно легко реализовать при помощи grep, но есть и другой способ, используя while и case

#!/bin/sh
num=0
while read LINE
do
num=$[$num+1]
char=$1
origword=$LINE
while true; do
case $LINE in
'') echo "$char not found"; break;;
${char}*) echo "$char found in $origword line number $num"; break;;
esac
echo $LINE
word=${LINE#?}
done
done < $2

Если назвать файл с данным скриптом script, то запускается он так :

./script <словосочетание которое мы ищем> <имя файла>