Вот решил после взлома своего сайта защитить сайт от повторного взлома защитой входа в админский аккаунт кодовым словом. Но не знаю как осуществить и куда в какой файл это писать. Не разбираюсь в php. Не подскажете как делать при входе в админский аккаунт перепроверку на кодовое слово, которое знаю только я? Или сделать так, чтобы эта проверка происходила каждые 5 минут? И как сделать, чтобы после входа в свой аккаунт сессия автоматически разрывалась после каждых 5 минут? Заранее спс. Нужно очень.
DLE. Просто, чтобы возникало окошко для ввода секретного слова после входа в сессию админа. Админка защищена конечно проверкой по IP. Но мне надо, чтобы при входе не в админку, а после входа в админский аккаунт выходил запрос типа "введите пароль который знает только адмистратор, иначе сессия админа будет закрыта". Чтобы если правильно админская сессия продолжалась, если нет была закрыта.
Тут дело в том, что мой сайт ломают через недостаточную фильтрацию в облаке тегов либо в другом модуле и пользуются кратковременно правами администратора и пакостят на сайте.
Ну и смысл? просто поставь пароль на админ аккаунт посложнее, а так взломщик сможет зайти если хранить кодовое слово в мускуль так как я понимаю он зашёл через скуль-инъекцию обнови двиг на сайте до последней версии и не будет тебе беды) Ну, а если так жаждешь, то примерно такое надо сделать: PHP: if(isset($_COOKIE['admin'])){ Echo "<form method=\"post\"><br> <input type=\"password\" name = \"secret\" /><br> <input type=\"submit\" name=\"create\" value=\"Отправить\"> "; } Затем отправляешь данные на проверку через sql или если используешь пасс в файле то там его проверяешь, под рукой нет движка дле, а также я новечёк в пхп сильно не пинай)
Подскажите, как посредством curl получить изображение каптчи с адреса http://www.bonus.mts.ru/ru/mts_bonus/captcha/smcaptcha.jpg При обращении всегда возвращается пустой результат.
Обязательно curl`ом ? Если так <img src="http://www.bonus.mts.ru/ru/mts_bonus/captcha/smcaptcha.jpg" />
Я так понял, что тебе нужно капчу вывести где-то на стороне, чтобы потом курлом отправить разгаданный код. Нужно по ссылке достать source изображения, потом base65_encode(); его, дальше выводишь на стороне и не будет прямого обращения с твоего ip на картинку на сервере mts. PS: без base64 скорее всего можно обойтись.
всем привет,есть класc phpmailer как через него отправить сгенированый пароль на мыло? PHP: <?php // generator password $chars="qazxswedcvfrtgbnhyujmkiolp1234567890QAZXSWEDCVFRTGBNHYUJMKIOLP"; $max=10; $size=StrLen($chars)-1; $pwd=null; while($max--) $pwd.=$chars[rand(0,$size)]; $pwd = $sendtopwd; /** * Simple example script using PHPMailer with exceptions enabled * @package phpmailer * @version $Id$ */ require '../class.phpmailer.php'; try { $mail = new PHPMailer(true); //New instance, with exceptions enabled // <<<<<<<<<here>>>>>>>> $body = "ВАШ ПАРОЛЬ $sendtopwd"; $body = preg_replace('/\\\\/','', $body); //Strip backslashes $mail->IsSMTP(); // tell the class to use SMTP $mail->SMTPAuth = true; // enable SMTP authentication $mail->Port = 25; // set the SMTP server port $mail->Host = "mail.yourdomain.com"; // SMTP server $mail->Username = "[email protected]"; // SMTP server username $mail->Password = "password"; // SMTP server password $mail->AddReplyTo("[email protected]","First Last"); $mail->From = "[email protected]"; $mail->FromName = "First Last"; $to = "[email protected]"; $mail->AddAddress($to); $mail->Subject = "First PHPMailer Message"; $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test $mail->WordWrap = 80; // set word wrap $mail->MsgHTML($body); $mail->IsHTML(true); // send as HTML $mail->Send(); echo 'Message has been sent.'; } catch (phpmailerException $e) { echo $e->errorMessage(); } ?> сама отправка происходит нормально но возвращает текст $sendtopwd
Восклицательный знак - это отрицание. Если isset(...) вернет true, то !isset(...) - false, и наоборот.
Я вот не могу разобратся кое с чем вот у меня есть скрипт PHP: <?php require_once 'config.php'; if (isset($_POST['submit'])){ $author = $_POST['author']; $news = $_POST['news']; if(isset($author)){ echo 'Вы не ввели Имя'; }else{ $link = mysql_connect("$server","$user","$password") or die (mysql_error()); $mysql_select_db = mysql_select_db ("$dbname") or die (mysql_error()); $sql = "INSERT INTO news SET author='$author',news='$news'"; $result = mysql_query($sql) or die (mysql_error()); } } ?> Если кнопка sumbit была нажата то выполняем проверку введено ли что нибудь в поле author . если в поле $author ничего не введено то echo 'Вы не ввели Имя'; а если же введено то else и дальнейший скрипт . Но блин если я не чего не ввожу он мне выводит сообщение ,а скрипт всеровно выполняется ,как быть ,я что то вообще запутался .
Замени PHP: $author = $_POST['author']; на PHP: if (isset($_POST['author'])) $author = $_POST['author']; И дальше это условие: PHP: if(isset($author)) замени на следующее: PHP: if (!isset($author)) || (empty($author)))
1. есть пароль восстановления на сайте,как сделать чтоб на мыло пришел линк и при переходе сменилья пасс,смысле как реализовать? 2. есть wysiwig редактор nicedit,как сохранить из тексариа на бд и как оттуда вытащить с бб? _nicedit.com/index.php
Да именно это я и хочу сделать. Но при попытке достать source изображения, curl всегда возвращается пустой результат. Возможно из за того, что сервер мтс перед отправкой кода изображения, вначале отправляет http заголовок "HTTP/1.1 404 Not Found" Вот сам код: PHP: <?php class mts { function curl($url, $cookie = false, $post = false, $header = false, $follow_location = false) { $ch = curl_init($url); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FAILONERROR, true); curl_setopt($ch, CURLOPT_HEADER, $header); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, $follow_location); if ($cookie) { curl_setopt($ch, CURLOPT_COOKIE, $cookie); } if ($post) { curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); } $response = curl_exec($ch); curl_close($ch); return $response; } function __construct() { $result = $this->curl('http://www.bonus.mts.ru/ru/mts_bonus/captcha/smcaptcha.jpg', false, false, true); print_r($result); } } $mts = new mts(); ?>