intero Posted April 30, 2005 Report Share Posted April 30, 2005 Problēma sekojoša: Mēģinu uztaisīt Login sistēmu, tomēr atduros pret sesijām :( index.php <FORM METHOD=POST ACTION="test.php"> <INPUT TYPE="text" NAME="name"> <INPUT TYPE="submit"> </FORM> test.php <?php session_start(); $_SESSION['user'] = $_POST['name']; echo $_SESSION['user'] . "<br>"; //parbaudaam ?> <a href=test.php >home</a> <a href=?log=main2 >main2</a><br> <a href=test2.php>Test2</a> <hr> <? if ($log == "" ) include "main.php"; if ($log == "main2" ) include "main2.php"; ?> un main2.php Main2<br> <? echo $_SESSION['user']; //parbaudaam ?> Komentārs: :) Ievadot vārdu "TEST" , nosūtam to uz test.php un tur mēs redzam vārdu "TEST" . It kā viss pareizi.. Un tālaāk sākas problēma! Ja mēs nospiežam Linku Home vai main2, vairs vārdu TEST neredzam. Cik man šķiet, tad taa ir Include vaina, jo spiežot uz Linku Test2 <?php session_start(); echo "Vārds = " . $_SESSION['user'] . "<br>"; //parbaudaam ?> šajā gadījumā vardu TEST redzam izvāditu... viss ir kārtībā. Lūdzu palīdziet, jo man par sesijām ir tumša bilde :( bet gribētos, lai tā nebūtu. :unsure: Link to comment Share on other sites More sharing options...
bubu Posted April 30, 2005 Report Share Posted April 30, 2005 Te nav nekāda vaina ar sesiju nesaprašanu, bet gan ar POST darbības nesaprašanu. Skaties, tev test.php ir kods: <?php session_start(); $_SESSION['user'] = $_POST['name']; ... Pirmo reizi logojoties no index.php faila protams, tiek padota tā input name="name" vērtība POST masīvā. A bet nākamreiz, kad tu ej uz test.php failu spiežot to linku, padomā vai tad notiek POST darbība, t.b. vai kautkāda forma tiek submitēta? Taču nē! Tiks piešķirts tukšs strings. Būtu tev uzlikts error_reporting(E_ALL); uzreiz redzētu, ka izmet kļūdu (tb notici) par nedefinētu masīva elementu. Turpmāk visu skriptu sākumā liec šādas rindiņas: error_reporting(E_ALL); ini_set(display_errors, "1"); Vieglāk pamanīsi kļūdas. Link to comment Share on other sites More sharing options...
Recommended Posts