
php problem
zdravim mam problem a nevim jak ho vyresit.
pise mi to toto:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in F:\VertrigoServ\www\index.php on line 47
nevite cim by to mohlo byt?
echo "
<h1>Přihlaste se</h1>
<form action="overeni.php" method="POST"> <--- 47 radek
overeni.php je skript pro ověření zadaných dat, tzn. po klíknutí na tlačítko Ok se data pošlou do tohoto souboru metodou POST
Použij escape znak nebo apostrof.
?
nebo
a nevíte co je spatne zde:
echo "<div class="back"><a href="registration.php">registrace</a></div>";
pise to:Parse error: syntax error, unexpected T_ECHO, expecting ',' or ';' in F:\VertrigoServ\www\index.php on line 65
Však Vám to ukázal.
Echo se dává do uvozovek ", jenže " se taky ukončuje, tím pádem musíte echu říct, že " v html syntaxu má brát jako součást echnutého textu. Tím pádem buď změníte echo uvozoky na apostrof (" na ')
nebo řeknete echu, že " v html syntaxu má vypsat taky (před " dáte \)
Sorry, líp napsat to asi neumím.
echo '<div class="back"><a href="registration.php">registrace</a></div>';
taky ne
Blbost, to musí jít, bude chybat jinde.
Nemůžete poslat celý kód?
<?php
session_start();
//Celý postup funguje na sessions. Právě v session se ukládají data uživatele, zatímco se nacházi na stránkach. Je důležite spustit sessions na začátku stránky!
if(isset($_GET['action']) AND $_GET['action'] == 'odhlasit_se'){
$_SESSION['name']='';
$_SESSION['id']='';
unset($_SESSION['name']);
unset($_SESSION['id']);
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"xhtml1-strict.dtd">
<html xmlns="xhtml" xml:lang="en" lang="en">
<head>
<title>Přihlašení uživatele</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<style>
.back{
font-size:10pt;
margin-top:20px;
}
</style>
</head>
<body>
<?php
//ověřujeme zda proměnné jméno a id jsou prázde nebo ne
if(!empty($_SESSION['name']) AND !empty($_SESSION['id']))
{
//V případě, že nejsou tak zobrazime jméno uživatele a odkaz, který je schovaný, jesli uživatel není přihlášený
echo "<h1>Ahoj ".$_SESSION['name']."</h1>
<p>Tyto <a href='cz'>stránky</a> můžou navštívit jen registrované uživatele</p>";
} else {
//V případě, že tyto proměnné jsou prázdne, zobrazime přihlašovací formulář a odkaz s prázdným atributem href
echo "
<h1>Přihlaste se</h1>
<form action=\"overeni.php\" method=\"POST\">
<!-- overeni.php je skript pro ověření zadaných dat, tzn. po klíknutí na tlačítko Ok se data pošlou do tohoto souboru metodou POST -->
<div><label for=\"login\">login:</label></div>
<div><input type=\"text\" name=\"login\"></div>
<!-- Do textového pole se jménem login ( name=\"login\" ) uživatel zadá svůj login -->
<div><label for=\"heslo\">Heslo:</label></div>
<div><input type=\"password\" name=\"heslo\"></div>
<!-- Do pole se jménem heslo ( name=\"heslo\" ) uživatel zadá svoje heslo -->
<div><input type=\"submit\" name=\"go\" value=\"Ok\"></div>
<!-- tlačítko ( type=\"submit\" ) odesíla data do souboru overeni.php -->
</form>
";
echo "Ahoj návtěvníku. Tyto <a href="#">stránky</a> můžou navštívit jen registrované uživatele";
echo '<div class="back"><a href="registration.php">registrace</a></div>';
}
?>
</body>
</html>
uz jsem to vyresil chyba byla na radku 64 nevim proc to psalo na 65 :D
ale misto pismen s hacky mi to ukazuje otazniky v cernem kosoctverci
ok, jinak doporučuji naučit se jeden styl a nekombinovat, dělá to zbytečně bordel..
Takže buď echo uzavírat do ' nebo do ", ale před syntax " psát \
jsem v teto oblasti novy mohly by jste mi prosim jeste opravit odhlasovaci skript
echo '<p><a href="".$_SERVER[\'PHP_SELF\']."?action=odhlasit_s e">Odhlásit se</a></p>';