Autor Zpráva
kuko
Profil *
zdravim
mam tu kod pomocou ktoreho editujem jednotlive stranky webu pomocou internetoveho prehliadaca (nerieste prosim preco).
maju sa editovat iba stranky ktore mi vypise tato aplikacia tj ktore su ulozene v zlozke "zoznam". problem je v tom ze ktokolvek moze napisat za edit.php?edit= hociktoru stanku a dostane sa tak ku vsetkym zdrojovym kodom... pomozte mi pls tomuto zamedzit

<?php

if($_GET[edit] && file_exists($_GET[edit]))
{

$file = $_GET[edit];
$soubor = fopen($file, "a+");

if($_POST[akce] == "Ulož" && $_GET[edit])
{

$_POST[msg] = stripslashes($_POST[msg]);
$soubor = fopen($file, "w");
fwrite($soubor, $_POST[msg]);
fclose($soubor);
$zpr = "<p>ULOŽENÉ!!! </p>";

}


$handle = fopen($file, "r");
$contents = fread($handle, filesize($file));
$contents = stripslashes($contents);
fclose($handle);

echo "
<fieldset style='align:center'>
<legend>Meno:&nbsp;<b>$_GET[edit]</b></legend>$zpr
<form style='margin:auto' method='post'>
<textarea name='msg' cols='100' rows='11'>". htmlspecialchars($contents) ."</textarea><br />
<br><br><center><input type='submit' name='akce' value='Ulož' /><center/></form></fieldset><br />";
}

$array = array("html","htm","inc","php","dat","css");

$dir=opendir("zoznam");
while ($file = readdir($dir))

{

$f = Explode(".",$file);
if($f[2]) $f[1]=$f[2];
if(in_array($f[1],$array))

echo " <a href='edit.php?edit=zoznam/$file'>$file</a>";
}
?>
Akacko
Profil
kuko
Vytvoř si formulář, kde se zadá heslo. pak jej ověříš s nějakým žetězcem, pokud se shoduji tak nastav $_SESSION. Pokud bude $_SESSION nastavené -> zobrazíš editaci, jinak ne.

Btw. toto by mělo spíše patřit do sekce PHP.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0