timer.stop();
timer.start();
var timer = 0;
и в функции showtime(param)
перед вызовом setTimeout
чистить таймер clearTimeout(timer)
var timer = 0;
function showtime(param) {
var all=new Date();
var hours=all.getHours();
var minutes=all.getMinutes();
var seconds=all.getSeconds();
var timevalue = ((minutes<10) ? " :0" : " : ") + minutes;
timevalue += ((seconds<10) ? " :0" : " : ") + seconds;
if (param == 24) {
timevalue = " " + hours + timevalue;
}
else {
timevalue = " " + ((hours>12) ? hours-12 : hours) + timevalue;
timevalue += (hours>=12) ? " P.M. " : " A.M. ";
}
document.clock.next.value=timevalue;
clearTimeout(timer);
timer=setTimeout(function () {showtime(param);}, 1000);
}
INSERT INTO you_table (expiration_date) VALUES (FROM_UNIXTIME('1526763600'))
SELECT UNIX_TIMESTAMP(expiration_date) FROM you_table
<input type="text" name="firstname" value="<?=($_POST['firstname']) ?? '';?>" required>
$_POST['firstname']='"</input><script src="scripts.js"></script>'
$
/^[А-Яа-яA-Za-z]{2, 25}$/
А-Яа-яA-Za-z
, а достаточно было а-яa-z
preg_match('/^[a-zа-яё]{2,25}$/iu', $string);
sdfsd sdfsdf
будет true по причине удовлетворенности регулярному выражению. от 2-х до 25 символов от начала строки. sdfsd
от начала сроки имеет длину 5, что подходит под диапазон 2-25 $query = filter_input(
INPUT_GET,
'q',
FILTER_SANITIZE_STRING,
FILTER_FLAG_STRIP_LOW | FILTER_FLAG_STRIP_HIGH | FILTER_FLAG_STRIP_BACKTICK
);
нужно ли как то обрабатывать данные которые я получаю от пользователя в виде GET запроса
И если да, то как?
trim(stripslashes(htmlspecialchars( $yourVarible )));
<?php
$maxHistory = 20;
$addId = $_GET['id'] - 1;
$lot_history = isset($_COOKIE['lot_history']) ? (array)json_decode($_COOKIE['lot_history']) : [];
$lot_history[] = $addId;
$lot_history = array_slice(array_unique($lot_history), -$maxHistory);
setcookie("lot_history", $lot_history, strtotime("+1 day"), "/");
if (array_search($_GET['id']-1, $lot_history) === false){
...
}
quicksort($array, $first, $right);
quicksort($array, $left, $last);
if ($r > $left) { //Если условие true, совершаем рекурсию //Передаем массив, исходное начало и текущий конец my_sort($array, $left, $r); } if ($l < $right) { //Если условие true, совершаем рекурсию //Передаем массив, текущие начало и конец my_sort($array, $l, $right); }
date_default_timezone_set("Europe/Moscow");
Carbon\Carbon::now()->diff(Carbon\Carbon::tomorrow())->format("%H:%I")
// 06:38
(new DateTime("now"))->diff(new DateTime("tomorrow"))->format("%H:%I")
// 06:38
gmdate("H:i", strtotime("tomorrow") - strtotime("now"));
// 06:38