Архив

Архив Апрель 2017
26 апреля 2017 Нет комментариев
$('select option:not(:selected)').attr('disabled',true);
Categories: Javascript Tags:
19 апреля 2017 Нет комментариев

Вывод изображения:

$message.='<img src="https://'.$_SERVER['HTTP_HOST'].'/image.php?text='.urlencode('пример текста').'&image=picture_name"/>';

Содержание файла image.php:

<?php
if($_GET['text']&&$_GET['image']){
	header("Content-type: image/jpeg");
	$bg=$_SERVER['DOCUMENT_ROOT']."/images/".$_GET['image'].".jpg";
	$font=$_SERVER['DOCUMENT_ROOT']."/fonts/font.ttf";
	$picture=imagecreatefromjpeg($bg);
	$center_w=imagesx($picture)/2;
	$center_h=imagesy($picture)/2;
	$color=imagecolorallocate($picture,255,255,255);
	$box=imagettfbbox(9,0,$font,$_GET['text']);
	$left=$center_w-round(($box[2]-$box[0])/2);
	$top=$center_h-round(($box[7]-$box[1])/2);
	imagettftext($picture,9,0,$left,$top,$color,$font,$_GET['text']);
	imagejpeg($picture,null,100);
	imagedestroy($picture);
}
?>
Categories: PHP Tags:
18 апреля 2017 Нет комментариев
function GetListFiles($folder,&$all_files){
	$fp=opendir($folder);
	while($cv_file=readdir($fp)){
		if(is_file($folder."/".$cv_file)){
			$all_files[]=$folder."/".$cv_file;
		}
		elseif($cv_file!="."&&$cv_file!=".."&&is_dir($folder."/".$cv_file)){
			GetListFiles($folder."/".$cv_file,$all_files);
		}
	}
	closedir($fp);
}
$all_files=array();
GetListFiles('/var/www/import_files',$all_files);
print_r($all_files);

http://php.ua/blog/2011-08-08/список-файлов-в-папке-и-подпапках/

Categories: PHP Tags:
14 апреля 2017 Нет комментариев

Проблема с доставкой писем, отправленных с помощью функции php mail() на почтовые ящики локального домена, когда у домена указаны внешние MX записи, например, Яндекс.
В примере с сайта mydomain.ru отправляется письмо на ящик user@mydomain.ru
sendmail пытается доставить письмо на локальный почтовый ящик, и возвращает ошибку:

Apr 14 11:48:24 mydomain sm-mta[1256]: v3E8mOKX001256: <user@mydomain.ru>... User unknown
Apr 14 11:48:24 mydomain sendmail[1255]: v3E8mOSK001255: to=user@mydomain.ru, ctladdr=www-data (33/33), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=91914, relay=[127.0.0.1] [127.0.0.1], dsn=5.1.1, stat=User unknown

Но, даже если такой пользователь и существует, почту он получает с другого сервера, в нашем случае с mail.yandex.ru
Входные данные:

root@mydomain:~# cat /etc/hostname
mydomain.ru
root@mydomain:~# cat /etc/hosts
127.0.0.1	localhost
111.111.111.111	mydomain.ru	mydomain

Добавляем в:

root@mydomain:~# mcedit /etc/mail/sendmail.mc

в конец файла (разные открывающиеся и закрывающиеся кавычки — так и нужно)

define(`MAIL_HUB',`mydomain.ru.')dnl
define(`LOCAL_RELAY',`mydomain.ru.')dnl

затем

root@mydomain:~# cd /etc/mail/
root@mydomain:/etc/mail# make all reload
root@mydomain:/etc/mail# make all -C /etc/mail
root@mydomain:/etc/mail# reboot

На основе: http://promote-sites.ru/blog/server/mail-from-yandex-and-sendmail.html

Categories: Unix Tags:
12 апреля 2017 Нет комментариев

Только воскресенья:

$(".datepicker").datepicker({
	beforeShowDay:function(date){return[date.getDay()!=0,""]},
});

Субботы и воскресенья:

$(".datepicker").datepicker({
	beforeShowDay:function(date){return[date.getDay()!=0&&date.getDay()!=6,""]},
});
Categories: Javascript Tags:
10 апреля 2017 Нет комментариев

Отключение MySQL Strict Mode, например, при ошибках:

Incorrect integer value: '' for column 'columnname' at row 1

1. Создать файл

mcedit /etc/mysql/conf.d/disable_strict_mode.cnf

с содержимым

[mysqld]
sql_mode=IGNORE_SPACE,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

2. Перезапуск MySQL

service mysql restart
Categories: MySQL, Unix Tags: , ,
5 апреля 2017 Нет комментариев

Определение расширения файла:

$('input[type=file]').live('change',function(){
	var ext=$(this).val().split('.').pop();
	alert(ext);
});

Проверка на допустимость типа файла для загрузки:

$('input[type=file]').live('change',function(){
	var ext=$(this).val().split('.').pop();
	var allow=new Array('7z','bin','bz','bz2','doc','docx','gif','gz','htm','html','ico','jpeg','jpg','mov','mp3','mpeg','mpg','pdf','php','png','ppt','pptx','rar','rtf','swf','tar','txt','wav','xls','xlsx','zip');
	if($.inArray(ext,allow)===-1){
		$(this).val('');
		alert('Недопустимый тип файла');
	}
});
Categories: Javascript Tags: