Защитаване на страницата?

ReXTaN

Registered
Искам да попитам можели да се защитят страниците с тоя урок:
http://web-tourist.net/login/login/view.php?st=806
Например админ панел съм го защитил но не искам за всяко нещо от админ панела име и парола а искам само с едно въвеждане на име и паролата да отключи някой страници, и да си влиза без да иска име и парола а като изляза и се опитвам да вляза в админ панела да ми иска парола отново.
Дано да сте ме разбрали.

+1 На този който ми помогне!
 
Значи ето как трябва да станицата за логване в админ панела:

Код:
<?php
session_start();

// тук си сложете името и паролата
$username = "ime";
$password = "parola";

if ($_POST['forUsername'] != $username || $_POST['forPassword'] != $password) {
?>

<b>Защитена страница!</b><br />
<form name="form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<label for="forUsername">Име:</label>
<input type="text" title="Напишете си името" name="forUsername" />
<br />
<label for="forPassword">Парола:</label>
<input type="password" title="Напишете си паролата" name="forPassword" />
<br />
<input type="submit" name="Submit" value="Вход" />
</form>

<?php
}
else {

$_SESSION["lognat_admin"] == TRUE;

?>

Това е защитената част на страницата.<br />
Тук се добавят нещата, които желаете да се покажат след въвеждане на правилно Име и Парола...

<?php
}
?>


Ето как трябва да станат другите страници:



Код:
<?php
session_start();

if($_SESSION["lognat_admin"] == TRUE){



/// ТВОЯ КОД



}else{

die("НЕ СИ ЛОГНАТ!");
}
?>
 
Дава грешка в налато на този ред
session_start();
И като вляза и се пробвам да вляза в защитените страници ми вади грешката къде започва информацията която е защитена.
 
ReXTaN каза:
Дава грешка в този ред
session_start();
не трябва да имаш свободно място между <? и сессион_старт(); и преди <? също не трябва да има празно място
 
Нещо не става и така ако искаш поправи кода и го постни че не разбирам от пхп
 
Код:
<?php
session_start();

// тук си сложете името и паролата
$username = "ime";
$password = "parola";

if ($_POST['forUsername'] != $username || $_POST['forPassword'] != $password) {
?>

<b>Защитена страница!</b><br />
<form name="form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<label for="forUsername">Име:</label>
<input type="text" title="Напишете си името" name="forUsername" />
<br />
<label for="forPassword">Парола:</label>
<input type="password" title="Напишете си паролата" name="forPassword" />
<br />
<input type="submit" name="Submit" value="Вход" />
</form>

<?php
}
else {

$_SESSION["lognat_admin"] == TRUE;

?>

Това е защитената част на страницата.<br />
Тук се добавят нещата, които желаете да се покажат след въвеждане на правилно Име и Парола...

<?php
}
?>


Код:
<?php
session_start();

if($_SESSION["lognat_admin"] == TRUE){



/// ТВОЯ КОД



}else{

die("НЕ СИ ЛОГНАТ!");
}
?>
 
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\wamp\www\admin.php:9) in C:\wamp\www\admin.php on line 76

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\wamp\www\admin.php:9) in C:\wamp\www\admin.php on line 76
 
Слагал ли си някакъв дизайн html код?

В php файла ако нямаш html гледай да не си оставил някой space преди <?php
 
NewGuy каза:
Слагал ли си някакъв дизайн html код?

В php файла ако нямаш html гледай да не си оставил някой space преди <?php

Имам HTML и нямам никакъв space пред него :(
 
ReXTaN каза:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\wamp\www\admin.php:9) in C:\wamp\www\admin.php on line 76

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\wamp\www\admin.php:9) in C:\wamp\www\admin.php on line 76
Под
<?php
Не трябва да има нищо друго освен
session_start();
Ако имаш include или require те трябва да са под него!
Не трябва да имаш никакъв HTML над него!
HTML-a под session_start.
 
<?php
session_start();
?>
HTML Кода
<?php
// тук си сложете името и паролата
$username = "ime";
$password = "parola";

if ($_POST['forUsername'] != $username || $_POST['forPassword'] != $password) {
?>

<b>Защитена страница!</b><br />
<form name="form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<label for="forUsername">Име:</label>
<input type="text" title="Напишете си името" name="forUsername" />
<br />
<label for="forPassword">Парола:</label>
<input type="password" title="Напишете си паролата" name="forPassword" />
<br />
<input type="submit" name="Submit" value="Вход" />
</form>

<?php
}
else {

$_SESSION["lognat_admin"] == TRUE;

?>
И във двата файла така.
 
Пройвай с този код:
Код:
<?php session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<?php
if(isset($_POST['send'])){
$name = $_POST['name'];
$pass = $_POST['pass'];
$name1 = "potreb"; //Тука слагаш своето потреб.име
$pass1 = "hkkhds"; //Тук паролата дето искаш
if(($pass==$pass1) & ($name == $name1))
{
       echo "Ето къде бил ключа за палатката"; //[COLOR=RED]СЪДЪРЖАНИЕ!!![/COLOR]
	   $_SESSION["lognat_admin"] == TRUE; 
}
else{
      echo "Нямате право на достъп";
}
}
else
{
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<input type="text" name="name" />
<input  type="text" name="pass" />
<input type="submit" name="send" />
</form>
<?php
}
?>
</body>
</html>
и ползвай даденията ти втори код за проверка [/url]
 
Дам така ще е най добре но имам още един проблем:
другите защитени страници както каза ти ми дава грешка почва от съдържанието на скритата информация как да я пооправя ?
 

Back
Горе