Проблема состоит в том как открыть обычную html страницу через PHP , т.е. - чтобы после ввода логина пароля php не директил просто на страницу а открывал ее в себе ... И чтобы при входе на эту html страницу у нас редирект на php Логин/пароль . Для пример : у нас есть : index.php yes.html no.html при входе на index.php мы вводим правильные логин/пароль(логин парольпусть будут вшиты в сам код...) - открывается html страница yes.html / ну если же введенные данные не верны тогда редирект на no.html . Но в этом случае , если я просто иду на site.ru/yes.html , происходит редирект на site.ru/index.php вродь понятно объяснил , помогите плз .
Зачем iframe? Есть if и есть <<<HTML.... HTML; или просто echo '<td> <td><td><td><td><td><td> <td><td><td><td><td> <td>';
Code: if ($user_login==true) { include('yes.html'); } else include('no.html'); если чего не так поправьте могу ошибаться
PHP: <form method="POST" action=""> <input type="text" name="user"> <input type="password" name="pass"> <input type="submit" value="Eneter"> <? if((isset($_POST['pass'])) and (isset($_POST['user']))) { if (($_POST['pass']=='password') and ($_POST['user']=='user')) { include('./yes.html');} else include('./no.html'); } так?
PHP: <?php $file['no'] = 'no.html'; $file['yes'] = 'no.html'; if ($_GET['login'] == $login && $_GET['pass'] == $pass) { $content = file_get_contents($file['yes']); } else { $content = file_get_contents($file['no']); } echo ($content); ?>
))) аааа, не успел!!!! Но всё равно выложу, т.к. у меня больше условиям задачи соотвествует: index.php: PHP: <?php @ini_set("display_errors","0"); $submit = $_POST['submit']; $login = $_POST['login']; $pass = $_POST['pass']; if(isset($submit) && !empty($login) && !empty($pass)) { if ($login!= 'admin' && $pass!='123') { header ('location:no.php') or die('error'); } else { echo '<center><b> Вы ввели правильный пароль, добро пожаловать в админку! <b> </center> редактировать разделы:';// тут типо код yes.html } } else { ?> <html> <head> <meta http-equiv="Content-Type" content="text; charset=windows-1251"> <title>Логин</title> </head> <bоdу> <form method="post"> <table> <tr><td><span>Логин:</span></td><td><input type="text" name="login" /></td></tr> <tr><td><span>Пароль:</span></td><td><input type="password" name="pass" /></td></tr> </table> <input type="submit" name="submit" value="Войти:" /> </form> </bоdу> </html> <?}?> просто не no.html, а no.php, чтобы определять рефа, код no.php: PHP: <?php if (getenv("HTTP_REFERER")!='http://site.ru/index.php') exit; else echo 'Неверный логин или пароль!!!'; exit; ?>
Pashkela PHP: if (getenv("HTTP_REFERER")!='http://site.ru/index.php') exit; Потделать реферер непроблема, сам знаеш: CURLOPT_REFERER index.php PHP: <?php session_start(); $login = 'admin'; $pass = '123'; function Form() { echo '<table border="1" align="center"> <form method="post" enctype="application/x-www-form-urlencoded" action='.$_SERVER['PHP_SELF'].'> <tr> <td colspan="2">Авторизация</td> </tr> <tr> <td>Логин</td> <td><input type="text" size="20" maxlength="20" name="login"></td> </tr> <tr> <td>Пароль</td> <td><input type="password" size="20" maxlength="20" name="pass"></td> </tr> <tr> <td colspan="2"><input type="submit" value="login"></td> </tr> </form> </table> '; } if(empty($_POST['login']) || empty($_POST['pass'])) { Form(); exit; } if($_POST['login'] === $login && $_POST['pass'] === $pass) { $_SESSION['login'] = 'yes'; header('Location: yes.php'); echo 'Вы авторизованы, перейдите по ссылке: <a href="yes.php">ССЫЛКО</a>'; exit; } else { echo '<center><font color="red">Пароль неверный</font></center>'; Form(); $_SESSION['login'] = 'no'; exit; } ?> yes.php PHP: <?php session_start(); if(!isset($_SESSION['login']) || $_SESSION['login'] == 'no') { header('Location: index.php'); exit; } ?> а тут всякая хрень которую видно только если авторизация успешна Писал быстро поетому мог гдето что-то упустить, но вроде не упустил. Обязательное условие register_globals=off; При правильной авторизации перенаправление на yes.php, при неправильно снова покажет форму.
Без разницы, если браузер поддерживает редиректы, то в любом случае ты неуспееш увидеть ЕХО, будет редирект. Если же не подддреживает то тоже без разницы будет ЕХО, потом несработает редирект либо несработает редирект и будет ЕХО.
Code: Потделать реферер непроблема, сам знаеш: CURLOPT_REFERER я пошутил в честь дня сисадмина - кстати, всех с праздником - на самом деле всё это бред, нахрена 3 страницы аж и переадресации туда-сюда, если можно вообще всё в одну запихать
Вот тебе пример того что выдается при удачной авторизации: Вы авторизованы, перейдите по ссылке: ССЫЛКО Warning: Cannot modify header information - headers already sent by (output started at Z:\home\fepo.ru\www\gg\index.php:40) in Z:\home\fepo.ru\www\gg\index.php on line 41