function randomPassword() { $n = mt_rand(); $hash = antispamhash($n); $ret = substr(preg_replace("/[^a-zA-Z0-9]/", "", $hash), 0, 8); return $ret; }
<?php include "include/config.php"; $editorid = loginbycookie(); if ($editorid) { redirect(isAdmin($editorid) ? "/table.php" : "/edit.php?" . http_build_query(["email" => idToEmail($editorid)])); } $a = rand(10, 99); $b = rand(1, 9); $c = $a + $b; $render_data = ["a" => $a, "b" => $b, "chash" => antispamhash($c)]; $ret = constructTwig()->render("index.twig", $render_data); echo $ret;
function set_login_cookies($userid, $email, $pwhash) { $cookie_get = new GetVarClass("_COOKIE"); $session = $cookie_get->getvar("session", "[0-9a-f]+"); if (!$session) { $session = antispamhash(mt_rand()); } $ip = $_SERVER['REMOTE_ADDR']; $page = db_escape($_SERVER['REQUEST_URI']); $valid = date("Y-m-d H:i:s", time() + 7 * 86400); $sql = "INSERT INTO " . PREF . "sessions (userid, name, valid, ip, page, pwhash)\n\t\tVALUE ({$userid}, '{$session}', '{$valid}', INET_ATON('{$ip}'), '{$page}', '{$pwhash}')\n\t\tON DUPLICATE KEY UPDATE valid='{$valid}', ip=INET_ATON('{$ip}'), page='{$page}', pwhash='{$pwhash}'"; query($sql); cookie_set_httponly("email", $email, 0, "/"); cookie_set_httponly("session", $session, 0, "/"); }