Tjekke om der er logget ind inden kode køres
Hejsa - mine almindelige php-filer har denne kode helt i toppen<?php
session_start()
if (!isset($_SESSION['myplacename'])) {
header("location:index.php");
}
?>
Det betyder at siden ikke kan kaldes direkte på URL - og at man logger ud ved at afslutte sessionen (myplacename læses fra databasen ved login).
Men jeg har et problem med de php-filer som benyttes til form action. Der kan jeg ikke benytte denne kode. Det betyder fx at man kan køre commitform.php direkte fra adresselinjen uden at være logget ind:
Jeg har form.php som indeholder form 2 der startter sådan
<form name="form2" method="post" action="commitform.php">
commitform.php kan ikke starte med den koden nævnt ovenfor - så sker der bare ikke noget. Og det betyder som nævnt at jeg kan skrive
http://webstednavn/commitform.php direkte ind i en adresselinje uden at være logget ind.
Er der en best practice til at beskytte den slags filer?
Er der noget kode jeg skal kopiere ind for at vise mere om setup?