Не сте регистриран! Регистрирайте се БЕЗПЛАТНО, за да използвате услугите на сайта!

Нова тема
Проблем със стартиране на сесията?
Тази тема е погледната 241 пъти
Добави темата към любими | Принтирай темата | Нова тема 
Публикувано на: 18.08.2008 12:33
skarabeq
Калфа

Мнения: (20)

Имам следния проблем:
Когато напиша кода в тази форма:
login.html
CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<html>
<
head>
<
meta http-equiv="Content-Type"
content="text/html; charset=windows-1251">
</
head>
<
body>
<
FORM ACTION="sms.php" METHOD=POST>
<
b> Потребител:
<
INPUT NAME="code" TYPE="text" id="code" value="" size="12" maxlength="12">
Парола:
<
INPUT TYPE=submit VALUE="ВХОД">
</
FORM>
</
body>
</
html>
Кода се проверява дали е валиден от този файл:
sms.php
CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?PHP
function mobio_checkcode
($servID, $code, $debug=0) {



   
$res_lines = file("http://www.mobio.bg/code/checkcode.php?servID=$servID&code=$code");



   
$ret = 0;

   
if($res_lines) {



       
if(strstr("PAYBG=OK", $res_lines[0])) {

           
$ret = 1;

       
}else{

           
if($debug)

               
echo $line."\n";

       
}

    }
else{

       
if($debug)

           
echo "Unable to connect to mobio.bg server.\n";

       
$ret = 0;

   
}



   
return $ret;

}





$servID = 100;

$code = $_REQUEST["code"];



if(mobio_checkcode($servID, $code, 0) == 1) {

header("Location:http://saitami.net/read_more.php");

}else{

   
echo "Invalid code";

}

?>
Като провеи дали е валиден този код ме препраща на този файл:
read_more.php
В началото на този файл съм сложил следния код:
CODE
1
2
3
4
5
6
7
8
9
10
if (isset($HTTP_SESSION_VARS['code']))
{
$user=$HTTP_SESSION_VARS['code'];

}
else
{
echo "Access Deny!!!";
exit;
}
И тука вече е проблема, не иска да ми искара инфорацията в тази страница и ми искарва съобщение "Access Deny!!!".Въпроса ми е как да го направя че като напиша правилния код в кутииката на login.html, sms.php след като го провери дали е правилен и ме преправи към read_more.php да съм отворил сесия и да може да се чете информацията в този файл, а ако се опиташ да отвориш файла read_more.php директно преди да си минал проверката за валиден смс код от sms.php да не те допуска да четеш информацията във файла read_mode.php?


 
---------------------------
Потребител от: 03.04.08 | Всички уроци от skarabeq | Всички скриптове от skarabeq
напиши eMail напиши лично съобщение виж профила на skarabeq
Публикувано на: 18.08.2008 13:48
zipopro
Майстор

Мнения: (743)

Като за начало:
1. Слагаш най-отпред session_start();
2. Как се регистрира сесия:
$_SESSION[ses_ime] = "Текст, числа и други"
3. Как се изкарва:
echo $_SESSION[ses_ime];
Разбра ли?

В sms.php и read_more.php слагаш най-отпред след <?php:
session_start();
И от тук в SMS.php след като го е проверило преди да пусне header() се слага една сесия. Т.е. sms.php става:
CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
session_start();
function mobio_checkcode($servID, $code, $debug=0)
{
   
$res_lines = file("http://www.mobio.bg/code/checkcode.php?servID=$servID&code=$code");
   
$ret = 0;
   
if($res_lines)
    {
       
if(strstr("PAYBG=OK", $res_lines[0]))
       {
         
$ret = 1;
       
}else{
         
if($debug)
            
echo $line."\n";
       
}
    }
else{
       
if($debug)
       
echo "Unable to connect to mobio.bg server.\n";
       
$ret = 0;
   
}
   
return $ret;
}
$servID = 100;
$code = $_REQUEST["code"];

if(mobio_checkcode($servID, $code, 0) == 1)
{
///////////////////////////////////////////// ТУК!!!
    
$_SESSION[code] = $code;
   
header("Location:http://saitami.net/read_more.php");

}else{
   
echo "Invalid code";
}
?>
И в read_more.php:
CODE
1
2
3
4
<?php
session_start();
........ Кода .......
?>


 
---------------------------
Потребител от: 20.12.06 | Всички уроци от zipopro | Всички скриптове от zipopro

Лъчезар Петров Лечев - 14 - Стара Загора - Уеб Програмист
Винчета, болчета гайкии...!
напиши eMail напиши лично съобщение виж профила на zipopro
Публикувано на: 20.08.2008 10:34
skarabeq
Калфа

Мнения: (20)

Цитат от zipopro@18.08.2008 13:48:
Като за начало:
1. Слагаш най-отпред session_start();
2. Как се регистрира сесия:
$_SESSION[ses_ime] = "Текст, числа и други"
3. Как се изкарва:
echo $_SESSION[ses_ime];
Разбра ли?

В sms.php и read_more.php слагаш най-отпред след <?php:
session_start();
И от тук в SMS.php след като го е проверило преди да пусне header() се слага една сесия. Т.е. sms.php става:
CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
session_start();
function mobio_checkcode($servID, $code, $debug=0)
{
   
$res_lines = file("http://www.mobio.bg/code/checkcode.php?servID=$servID&code=$code");
   
$ret = 0;
   
if($res_lines)
    {
       
if(strstr("PAYBG=OK", $res_lines[0]))
       {
         
$ret = 1;
       
}else{
         
if($debug)
            
echo $line."\n";
       
}
    }
else{
       
if($debug)
       
echo "Unable to connect to mobio.bg server.\n";
       
$ret = 0;
   
}
   
return $ret;
}
$servID = 100;
$code = $_REQUEST["code"];

if(mobio_checkcode($servID, $code, 0) == 1)
{
///////////////////////////////////////////// ТУК!!!
    
$_SESSION[code] = $code;
   
header("Location:http://saitami.net/read_more.php");

}else{
   
echo "Invalid code";
}
?>
И в read_more.php:
CODE
1
2
3
4
<?php
session_start();
........ Кода .......
?>
Е добре създавам сесия, ами къде проверявам дали тази сесия е правилна, за да може да се прочете информацията от файла read_more.php?


 
---------------------------
Потребител от: 03.04.08 | Всички уроци от skarabeq | Всички скриптове от skarabeq
напиши eMail напиши лично съобщение виж профила на skarabeq
 1 посетител чете тази тема (0 потребители и 1 гост)  
Активни потребители: ---
   





IT-PLACE.NET © 2004 - 2008