Archive for октября, 2009

автоматическое архивирование файла, через командную строку

Вторник, октября 20, 2009

Допустим нам нужно делать постоянный бекап файла или двух или архивировать перед отправкой или закачкой на сайт, то лучше чем использование архиватора из командной строки не придумаешь, на этот раз нам помог gzip.

Качаем разные сборки отсюда – http://ftp.gnu.org/gnu/gzip/ нам нужен файл под винду, значит gzip-1.2.4.msdos.exe

В архиве есть подробный мануал, а простую команду по архивированию одного файла я напишу:

gzip -c 123.sql > base.gz

автоматическая загрузка файла на ftp с помощью wput

Вторник, октября 20, 2009

Потребовалось мне настроить автоматическую загрузку файла базы данных на сайт, думал сделать скрипт приема или автоматизировать какой нибудь файловый менеджер, но нашел очень удобную программу по загрузке файлов по ftp, назывется она WPUT, качаем отсюда - http://wput.sourceforge.net/

Использовать её очень просто, вот команда по загрузке файла на сайт:

wput имя_файла.gz ftp://логин:пароль@rcn-avers.ru/папка/

Причем имеется докачка при разрыве, что очень удобно.

Её также можно использовать если требуется отсылать по почте ежедневно один и тот-же файл, но он большой или интернет нестабильный.

автоматическое востановление базы данных, с помошью дампера

Вторник, октября 20, 2009

Потребовалось мне закаченную базу в gzip архиве востановить, да так чтобы и менеджеры на работе могли это сделать и пароли не приходилось вводить. Использовал для этой цели всем известный Sypex Dumper + чьято разработка по авторезерву а мне нужно автовостановление.

Открываем dumper.php и в начале после

setcookie(”sxd”, base64_encode(”SKD101:{$_POST['login']}:{$_POST['pass']}”));

вставляем: setcookie(”sxdr”, base64_encode(”SKD101:{$_POST['login']}:{$_POST['pass']}”));

после:

elseif (!empty($_GET['sxd'])) {
$user = explode(”:”, base64_decode($_GET['sxd']));
if (@mysql_connect(DBHOST, $user[1], $user[2])){
$auth = 1;
}
else{
$error = ‘#’ . mysql_errno() . ‘: ‘ . mysql_error();
}
}
вставляем:

elseif (!empty($_COOKIE['sxdr'])) {
$user = explode(”:”, base64_decode($_COOKIE['sxdr']));
if (@mysql_connect(DBHOST, $user[1], $user[2])){
$auth = 1;
}
else{
$error = ‘#’ . mysql_errno() . ‘: ‘ . mysql_error();
}
}
elseif (!empty($_GET['sxdr'])) {
$user = explode(”:”, base64_decode($_GET['sxdr']));
if (@mysql_connect(DBHOST, $user[1], $user[2])){
$auth = 1;
}
else{
$error = ‘#’ . mysql_errno() . ‘: ‘ . mysql_error();
}
}

после:

setcookie(”sxd”);

вставляем:

setcookie(”sxdr”);

находим:

function restore(){

и вместо:

if (!isset($_POST)) {$this->main();}

вставляем:

if (!isset($_REQUEST)) {$this->main();}

if (empty($_GET['sxdr'])) {

$base_root = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == ‘on’) ? ‘https’ : ‘http’;
$base_url = $base_root .= ‘://’. preg_replace(’/[^a-z0-9-:._]/i’, ”, $_SERVER['HTTP_HOST']);

$req = $base_url.$_SERVER['REQUEST_URI'].’?sxdr=’.$_COOKIE['sxdr'].’&’;

$req .= isset($_REQUEST['db_restore']) ? ‘db_restore=’.$_REQUEST['db_restore'].’&’ : ”;
$req .= isset($_REQUEST['file']) ? ‘file=’.$_REQUEST['file'].’&’ : ”;
//$req .= isset($_REQUEST['comp_method']) ? ‘comp_method=’.$_REQUEST['comp_method'].’&’ : ”;
//$req .= isset($_REQUEST['comp_level']) ? ‘comp_level=’.$_REQUEST['comp_level'].’&’ : ”;
$req .= ‘action=restore’;
echo tpl_page(’<form><div><label for=”url”>Use this URL to make the action you wanted to:<label><input value=”‘.$req.’” size=”30″ style=”width:100%” onclick=”this.setSelectionRange(0, ‘.strlen($req).’);”></div></form>’);
exit;
}

меняем:

$this->SET['last_db_restore'] = isset($_POST['db_restore']) ? $_POST['db_restore'] : ”;
$file = isset($_POST['file']) ? $_POST['file'] : ”;

на:

$this->SET['last_db_restore'] = isset($_REQUEST['db_restore']) ? $_REQUEST['db_restore'] : ”;
$file = isset($_REQUEST['file']) ? $_REQUEST['file'] : ”;

В итоге получаем ссылку после ввода логина и пароля и нажатия на кнопочку “восстановить”.
Эту ссылку можно добавить в избранное менеджеру или в bat файл,  который предварительно загружает новую базу данных.

Как реализовать антиспам без Каптчи

Воскресенье, октября 18, 2009

Если Ваших пользователей да и Вас достало вводить циферки с капчи, а спам все
равно проходит и сайт не имеет 10 000 посетителей в день, то это один из самых
простых способов борьбы со спамом.

Допустим, у нас есть форма:

<form action=”/mail.php” method=”post”>
<input type=”text” name=”login” value=”">
<input type=”text” name=”e-mail” value=”">

<input type=”submit” value=”Отправить”>
</form>

Добавим фиктивное поле с id=validator:

<form action=”/mail.php” method=”post”>

<input type=”text” name=”login” value=”">
<input type=”text” name=”e-mail” value=”">
<input id=”namename” type=”text” name=”name” value=”">
<input type=”submit” value=”Отправить”>
</form>

Допишем CSS для его сокрытия:

#namename{
display: none;
}

И добавим код проверки в скрипт отправки/подтверждения:

// Если скрытое поле заполнили
if ($_POST['name']!=”){echo “<center><b>Ботам скажем нет!<p>”;
exit; }

Вот и все, что и требовалось реализовать и без ресурсоемкой капчи и без созданий
сессий и яваскриптов. Если спам целевой и именно на Ваш сайт то и капча не спасет,
нужно будет думать над чем-то уникальным…

ремонт тнвд в Рязани, проверка одной мысли

Воскресенье, октября 4, 2009

Вот наткнулся на одном сайте что они вывели сайт по фразе ремонт тнвд в Рязани, и мне стало интересно любой ли сможет это сделать, правильно организовав структуру страницы, если она даже не на главной а внутри содержится. Ну что посмотримм… А пока почитаем что вообще понимается под фразой “ремонт тнвд в Рязани“.

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

Ремонту ТНВД и регулировке ТНВД предшествует комплекс диагностических
мероприятий с помощью которых выявляются имеющие место нарушения, приводящие
к нарушению работы топливного насоса высокого давления. Кроме того, при проведении
диагностических работ автомобиль проходит компьютерную диагностику, которая
также помогает определить возможные дефекты.