Autor Zpráva
bar
Profil
Ahoj,
jsem už celkem zoufalá, mám na stránkách následující kód:

<?php session_start();?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<meta http-equiv="Content-Language" content="cs">
<title></title>

</head>
<body>
<?php
if(isset($_SESSION["id"])):
echo "přihlášený uživatel: ".$_SESSION["id"];
else: ?>
<form action="zareg.php" method="post">
<fieldset><legend>zákaznický servis</legend>
<TABLE><TR><TD>jméno</TD><TD>&nbsp;&nbsp;<input type="text" name="jmeno" size="14" ></TD></TR>
<TR><TD>heslo</TD><TD>&nbsp;&nbsp;<input type="password" name="heslo" size="14"></TD></TR>
<TR><TD></TD><TD>&nbsp;&nbsp;<input type="submit" value="přihlásit"></TD></TR></TABLE>
</fieldset>
</form>
<?php endif ?>
</body>
</html>


V případě nastartování session na začátku stránky <?php session_start();?> validátor hlásí 4 chyby, se kterými si nevím rady. Pokud ale session smažu, je vše bez chyb a validní. Může mně prosím někdo poradit, jak to opravit?? Díky moc
Marty
Profil
No vypisuješ text (v případě přihlášení) jen tak přímo do body. Musíš ho obalit třeba do odstavce a pak uvidíš.
bar
Profil
Asi myslíš tady tuto část
if(isset($_SESSION["id"])):
echo "přihlášený uživatel: ".$_SESSION["id"];

Mám ji obalenou v divech. Smazala jsem všechno stylování, protože to na ty chyby nemělo vliv a aby to tady jako ukázka bylo přehlednější.
bar
Profil
Vzhledem k tomu, jak jsem pochopila, může mít na validitu vliv i obal, přepsala jsem úvodní příklad přesně, jak ho mám na stránce včetně divů:

<?php session_start();?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<meta http-equiv="Content-Language" content="cs">
<title></title>
</head>
<body>
<div>
<?php
if(isset($_SESSION["id"])):
echo "<div >přihlášený uživatel: ".$_SESSION["id"]." </div>";
else: ?>
<fieldset><legend>zákaznický servis</legend>
<form action="zareg.php" method="post">
<TABLE><TR><TD>jméno</TD><TD><input type="text" name="jmeno"size="14"></TD></TR>
<TR><TD>heslo</TD><TD><input type="password" name="heslo" size="14"></TD></TR>
<TR><TD></TD><TD><input type="submit" value="přihlásit"></TD></TR></TABLE>
</form>
</fieldset>
<?php endif ?>
</div>
</body>
</html>

Budu vděčná za každé vodítko jak na to
centi
Profil
bar
Určite by pomohlo, keby nám napísala aj znenie chýb z validátora.
Ale mám taký dojem, že riešenie by si našla tu:
http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=10&topic=2 150
bar
Profil
Pravděbodobně to bude stejný problém. Jen bych potřebovala ještě poradit, kam přesně se má vložit
ini_set("session.use_trans_sid","0"); - viz poslední příspěvek v daném řešení. Nevím, jest-li místo <?php session_start();?> hned na začátek nebo nemazat <?php session_start();?> a kód jen přidat.
centi
Profil
bar
Vlož to PRED štartovanie sessions.

<?php
ini_set("session.use_trans_sid","0");
session_start();
?>
bar
Profil
Tak jsem skript upravila, ale háže mně to chybu:
Warning: ini_set dl pfsockopen openlog syslog readlink symlink link leak fsockopen proc_open() has been disabled for security reasons in /3w/wz.cz/p/pbstyle/uvod1.php on line 2
Pokud to chápu, tak skript není povolený. Stránky mám na wz a testovací stránky na řešený problém tady.
Dá se to nějak jinak vyřešit, aby to bylo validní?
Toto téma je uzamčeno. Odpověď nelze zaslat.

0