Skip to content

Instantly share code, notes, and snippets.

@imitronov
imitronov / auth-steam-web-api.php
Last active October 18, 2017 21:32
Авторизация через Steam
<?php
require '/lightopenid/openid.php';
$steamkey = 'Ваш Steam Key';
$script = 'http://ваш.сайт/этот.скрипт';
try {
$openid = new LightOpenID($script);
if(!$openid->mode) {
@imitronov
imitronov / resize.php
Last active October 19, 2017 16:39
Image Resize
<?php
/** функция изменения размера фотки:
$picture - путь до исходной фотографии
$save_as - путь для сохранения миниатюры
$quality - качество миниатюры (0-100)
$new_x - ширина миниатюры (высоту рассчитывает сама, в соответствии с пропорциями)
возвращает true либо false **/
@imitronov
imitronov / copyright_from_file.php
Created October 19, 2017 16:48
Image Copyright
@imitronov
imitronov / captcha.php
Created October 19, 2017 16:55
simple captcha
<?php
session_start();
if(!isset($_SESSION['captcha'])) {
    $_SESSION['captcha'] = rand(11111,99999);
}
$font = 'system/font.ttf';
$img = imagecreate(120, 30);
@imitronov
imitronov / zip.php
Created October 19, 2017 16:57
create backup.zip
<?php
function zip_add_copyright(
        $archive,
        $copyright_file = 'ReadMe-FIRST.txt',
        $copyright = NULL
    ) {
    $copyright = ($copyright) ? $copyright : "Скачано с http://$_SERVER[HTTP_HOST]/\n" ;
    $copyright = mb_convert_encoding($copyright, 'cp1251', mb_detect_encoding($copyright));
@imitronov
imitronov / backup.php
Created October 19, 2017 17:01
MySQL backup
<?php
define('HOST', 'localhost');
define('USER', 'root');
define('PASS', '');
define('BASE', 'base');
define('CHAR', 'utf8');
try {
    $pdo = new Pdo('mysql:host='.HOST.';dbname='.BASE.';charset='.CHAR, USER, PASS);
@imitronov
imitronov / .htaccess
Created October 19, 2017 17:04
Переадресация на новый домен через .htaccess
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} robots.txt$ [NC]
RewriteRule ^([^/]+) $1 [L]
RewriteCond %{HTTP_HOST} ^old-site\.ru
RewriteRule ^(.*)$ http://new-site.su/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.old-site\.ru
RewriteRule ^(.*)$ http://new-site.su/$1 [R=301,L]
@imitronov
imitronov / scan.php
Created October 19, 2017 17:22
Сканирование сайта на наличие исполняемого eval js кода
<?php
function scanVirus($dir) {
    $files = scandir($dir);
    foreach($files as $file) {
        if(is_file($dir.$file) and pathinfo($file, PATHINFO_EXTENSION) == 'js') {
            $content = trim(file_get_contents($dir.$file));
            $pattern = '#var ([a-zA-Z0-9]+)="(.[^\"]*)",([a-zA-Z0-9]+)="";for\(var ([a-zA-Z0-9]+)=(.*?).length-1;(.*?)>0;(.*?)--\){if\((.*?)%2==1\)(.*?)+=(.*?).charAt\((.*?)\)}eval\((.*?)\);#mi';
@imitronov
imitronov / .htaccess
Last active July 29, 2018 13:40
Идеальный htaccess
ErrorDocument 404 /404.php
<ifModule mod_rewrite.c>
RewriteEngine On
# переадресация www.domain.com -> domain.com
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} ^www.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
@imitronov
imitronov / ftp_backup.php
Created October 19, 2017 17:28
Бэкап через FTP. Занимает очень много времени. Написан ради примера.
<?php
set_time_limit(0);
ignore_user_abort(true);
header("Connection: close");
ob_flush();
flush();
$ftp_server = '';
$ftp_user_name = '';