Рубрики
PHP

Отправка сообщения в телеграм

function send_message($message){
  $data = array(
        'chat_id' => CHAT_ID,
        'text' => htmlspecialchars($message),
        'disable_web_page_preview' => 'true',
        'parse_mode' => 'HTML',
        'disable_notification' => 'true'
    );

$url = "https://api.telegram.org/BOT_KEY/sendMessage";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
}
Рубрики
PHP

День недели по-русски

function getDayRus(){
    $days = array(
        'Воскресенье', 'Понедельник', 'Вторник', 'Среда',
        'Четверг', 'Пятница', 'Суббота'
    );
    return $days[(date('w'))];
}
Рубрики
PHP

Дата c месяцем по-русски

function getDateRus(){
    $monthes = array(
        1 => 'Января', 2 => 'Февраля', 3 => 'Марта', 4 => 'Апреля',
        5 => 'Мая', 6 => 'Июня', 7 => 'Июля', 8 => 'Августа',
        9 => 'Сентября', 10 => 'Октября', 11 => 'Ноября', 12 => 'Декабря'
    );
    return ( (int)date('d') . ' ' . $monthes[(date('n'))]);
}
Рубрики
PHP

Функция склонения слов после числительных

function num_word($value, $word1,$word2,$word3){
  //'товар', 'товара', 'товаров'
	$num = $value % 100;
	if ($num > 19) { 
		$num = $num % 10; 
	}
	
	$out = $value . ' ';
	switch ($num) {
		case 1:  $out .= $word1; break;
		case 2: 
		case 3: 
		case 4:  $out .= $word2; break;
		default: $out .= $word3; break;
	}
	
	return $out;
}
Рубрики
PHP

Расчет расстояния между двумя географицескими координатами

/*
     * @param $lat1 float $value <p>Широта 1-й точки</p>
     * @param $lng1 float $value <p>Долгота 1-й точки</p>
     * @param $lat2 float $value <p>Широта 2-й точки</p>
     * @param $lng2 float $value <p>Долгота 2-й точки</p>
     * @return float value растояние в метрах
     */
    function calculateDistance($lat1, $lng1, $lat2, $lng2)
    {
        $earthRadius = 6378137;

        $lat1 = deg2rad($lat1);
        $lng1 = deg2rad($lng1);
        $lat2 = deg2rad($lat2);
        $lng2 = deg2rad($lng2);

        return round($earthRadius * acos(cos($lat1) * cos($lat2) * cos($lng1 - $lng2) + sin($lat1) * sin($lat2)));
    }
Рубрики
JavaScript

Canvas сохранить и загрузить изображение

Инициализация canvas

var canvas = document.getElementById("sig-canvas");
canvas.width = canvas.width;
var ctx = canvas.getContext("2d");
ctx.strokeStyle = "#222222";
ctx.lineWidth = 4;

Загрузка изображения

var img = new Image;
img.onload = function(){
  ctx.drawImage(img,0,0); 
};
img.src = sig-dataUrl; 

Сохранение изображения

document.getElementById("sig-dataUrl").innerHTML = canvas.toDataURL();
Рубрики
PHP

Перевод UTF-8 в ISO-8859-15

function Utf8ToIsoDataStruct(&$data, $checkStringsIfText=true) {


		if (is_object($data) || is_array($data)) {

			foreach($data as $key => $property) {
				if (is_string($property)) {
					
					$propertyDecoded =  mb_convert_encoding($property, "ISO-8859-15", "UTF-8");
					
					if ($checkStringsIfText) {
						if (self::isText($propertyDecoded)) {
							$propertyResult = $propertyDecoded;
						} else {
							$propertyResult = $property;
						}
					} else {
						$propertyResult = $propertyDecoded;
					}				
					
					if (is_object($data)) {						
						$data->{$key} = $propertyResult;						
					} elseif (is_array($data)) {						
						$data[$key] = $propertyResult;						
					}

				} elseif (is_array($property) || is_object($property)) {
					if (is_object($data)) {
						self::Utf8ToIsoDataStruct($data->{$key}, $checkStringsIfText);
					} elseif (is_array($data)) {
						self::Utf8ToIsoDataStruct($data[$key], $checkStringsIfText);
					}
				}

			}

		}
	}
Рубрики
JavaScript

Возможность открытия только одной копии сайта

$(document).ready(function(){
  counter = localStorage.getItem("t_counter");
  
  if( counter == null){
    localStorage.setItem("t_counter",1);
    counter = 1;
  }
  my_v = parseInt(counter)+1;
  localStorage.setItem("t_counter",my_v);
  
   $(window).bind('storage', function (e) {
    if (my_v < localStorage.getItem("t_counter")){
        window.close();
    }
  });
 
});
Рубрики
HTML

Бесплатные HTML шаблоны

https://html5up.net/

Рубрики
HTML

Бесплатные HTML шаблоны

https://colorlib.com/wp/templates/