Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Panel administracyjny przy zapisywaniu dodaje znaki
Forum PHP.pl > Forum > Przedszkole
saracoratello
Witam mam mały problem gdyż mam zrobioną strone www. którą chce często edytować dlatego zrobiłam w ten sposob:
mam podstrony KTóRE WYGLąDAJA TAK : ( na przykladzie pliku o nazwie coratello
<head>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" />
<meta name="Description" content="" />
<meta name="Keywords" content="" />
<meta name="Author" content="" />
<meta name="Generator" content="kED2" />

<style type="text/css">
p{font-family:arial, monospace; color:065c7f; background-image: url('krata.jpg') }
.uwaga{font-family:arial; font-weight:bold; font-size:medium; color:red; background-image: url('krata.jpg')}
.mocne{font-family:arial, monospace; font-weight:bold; color:065c7f; background-image: url('krata.jpg')}
.podkr{font-family:arial, monospace; font-weight:bold; color:red; text-decoration:underline; background-image: url('krata.jpg')}
a:link {color:065c7f; background:fffff; font-family:arial, monospace; font-weight:bold; font-size:medium; background-image: url('krata.jpg')}
</style>
<title>politechnika</title>

</head>
<body topmargin="0" rightmargin="60">
<body topmargin="0" rightmargin="60">
<?php
$name="coratello";
plik=fopen($name.".txt","r");
$tekst=fread($plik, filesize($name.".txt"));
fclose($plik);
echo $tekst;
?>
</body>
</html>

a tak wyglada kod administracyjny dzieki którwmu otwieram i edytuje dane pliki z poziomu www:

<?php
ob_start();
session_start();

if($_GET['action']=="" and $_SESSION['admin']!=1)
{
echo "<form action=admin.php?action=loguj method=post style=\"font-family:arial,monospace; color:065c7f; background-image: url(krata.jpg)\">";
echo "<p> LOGIN:<input type=text name=login>HASŁO<input type=password name=pass><input type=submit value=zaloguj></p></form></p>";


}
elseif($_GET['action']=="loguj")
{
if($_POST['login']=="Ziutka" and $_POST['pass']=="oxymoronhaslo")
{
session_start();
session_register(admin);
$_SESSION['admin']=1;
header("Location: admin.php");
}
}
elseif($_GET['action']=="" and $_SESSION['admin']==1)
{
echo "<a href=admin.php?action=zmien&co=aktualnosci>zmień aktualnosci</a><br>";
echo "<a href=admin.php?action=zmien&co=news>zmień news</a><br>";
echo "<a href=admin.php?action=zmien&co=onas>zmień o nas</a><br>";
echo "<a href=admin.php?action=zmien&co=rekrutacja>zmień rekrutacja</a><br>";
echo "<a href=admin.php?action=zmien&co=regulamin>zmień regulamin</a><br>";
echo "<a href=admin.php?action=zmien&co=kontakt>zmień kontakt</a><br>";
echo "<a href=admin.php?action=zmien&co=politechnika>zmień politechnika</a><br>";
echo "<a href=admin.php?action=zmien&couw>zmień uniwersytet warszawski</a><br>";
echo "<a href=admin.php?action=zmien&co=am>zmień akademia medyczna</a><br>";
echo "<a href=admin.php?action=zmien&co=domatury>zmień matura</a><br>";
echo "<a href=admin.php?action=zmien&co=gimnazjum>zmień egzamin gimnazjalny</a><br>";
}
elseif($_GET['action']=="zmien" and $_SESSION['admin']==1)
{
$name=$_GET['co'];
$plik=fopen($name.".txt","r");
$tekst=fread($plik, filesize($name.".txt"));
fclose($plik);
echo "<form action=\"admin.php?action=update&co=".$name."\" method=post>";
echo "<textarea name=\"text\" rows=35 cols=120>";
echo $tekst; //wyświetlenie zawartości pliku
echo "</textarea>";
echo "<input type=submit value=update></form>";
}
elseif($_GET['action']="update" and $_SESSION['admin']==1)
{
$name=$_GET['co'];
$plik=fopen($name.".txt","w");
$text=$_POST['text'];
fwrite($plik, $text);
fclose($plik);
header("Location:admin.php");
}
else{echo "brak dostępu";}
?>

i podejrzewam ze w ktoryms z tych skryptów czai się problem. wszystko jest pieknie otwiera mi sie po logowaniu panel,klikam na ktorys link i mam problem gdyż po edycji tresci strony zamieszczonej w pliku txt i za'save'waniu zedytowanego pliku same mi sie w tresci dopisują znaki /. wyglada to tak : /"costam/". psuje mi to wygląd strony itd gdyz psuje skladnie stylów, niemoge zaladować wtedy grafiki itp. poradźcie mi coś. Z góry dziękuje życzliwym smile.gif
Balon
przy odczytywaniu skorzystaj z stripslashes" title="Zobacz w manualu php" target="_manual winksmiley.jpg
kszychu
Proszę użyć bbcode do wyświetlenia skryptów.
Przenoszę na przedszkole.
saracoratello
no wlasnie początkująca jestem i nie za bardzo wiem gdzie i co mialabym zmienić.
=kokos=
Cytat
przy odczytywaniu skorzystaj z stripslashes


tylko w kodzie, który Koleżanka podała nie widzę addslashes. Czy jest możliwe żeby "/" dodawane były automatycznie?

@edit

Teraz zobaczyłem, że tu nie ma dodawania winksmiley.jpg , już nvm smile.gif
Cysiaczek
BBCODE to to znaczniki w kwadratowych nawiasach. Widac je w edytorze jako buttony.Jeśli chodzi o kod, to... może poczekam, az zrobisz bbcode laugh.gif
=kokos=
Skorzystaj z podopowiedzi Balona. Powinno pomóc. W linijce

  1. <?php
  2. echo $tekst;
  3. ?>


zrób coś takiego

  1. <?php
  2. echo stripslashes($tekst);
  3. ?>
saracoratello
<?php
ob_start();
session_start();

if($_GET['action']=="" and $_SESSION['admin']!=1)
{
echo "<form action=admin.php?action=loguj method=post style=\"font-family:arial,monospace; color:065c7f; background-image: url(krata.jpg)\">";
echo "<p> LOGIN:<input type=text name=login>HASŁO<input type=password name=pass><input type=submit value=zaloguj></p></form></p>";


}
elseif($_GET['action']=="loguj")
{
if($_POST['login']=="Lidia" and $_POST['pass']=="error")
{
session_start();
session_register(admin);
$_SESSION['admin']=1;
header("Location: admin.php");
}
}
elseif($_GET['action']=="" and $_SESSION['admin']==1)
{
echo "<a href=admin.php?action=zmien&co=aktualnosci>zmień aktualnosci</a><br>";
echo "<a href=admin.php?action=zmien&co=news>zmień news</a><br>";
echo "<a href=admin.php?action=zmien&co=onas>zmień o nas</a><br>";
echo "<a href=admin.php?action=zmien&co=rekrutacja>zmień rekrutacja</a><br>";
echo "<a href=admin.php?action=zmien&co=regulamin>zmień regulamin</a><br>";
echo "<a href=admin.php?action=zmien&co=kontakt>zmień kontakt</a><br>";
echo "<a href=admin.php?action=zmien&co=politechnika>zmień politechnika</a><br>";
echo "<a href=admin.php?action=zmien&couw>zmień uniwersytet warszawski</a><br>";
echo "<a href=admin.php?action=zmien&co=am>zmień akademia medyczna</a><br>";
echo "<a href=admin.php?action=zmien&co=domatury>zmień matura</a><br>";
echo "<a href=admin.php?action=zmien&co=gimnazjum>zmień egzamin gimnazjalny</a><br>";
}
elseif($_GET['action']=="zmien" and $_SESSION['admin']==1)
{
$name=$_GET['co'];
$plik=fopen($name.".txt","r");
$tekst=fread($plik, filesize($name.".txt"));
fclose($plik);
echo "<form action=\"admin.php?action=update&co=".$name."\" method=post>";
echo "<textarea name=\"text\" rows=35 cols=120>";
echo stripslashes($tekst); // to zmieniłam exclamation.gif!
echo "</textarea>";
echo "<input type=submit value=update></form>";
}
elseif($_GET['action']="update" and $_SESSION['admin']==1)
{
$name=$_GET['co'];
$plik=fopen($name.".txt","w");
$text=$_POST['text'];
fwrite($plik, $text);
fclose($plik);
header("Location:admin.php");
}
else{echo "brak dostępu";}
?>

zmieniłam tą linijke jednak jedyna zmiana jest taka ze tych kresek nie widać z panelu edyutującego jednak w kodzie tresci strony w pliku txt one są i w momencie wyswietlania www nadal psują jej zawartośc. hmm moze dodac to do kazdego echo ?
=kokos=
Owszem, musisz tą funkcję dodać wszędzie tam gdzie wyświetlasz dane z bazy czy z pliku.

@edit

P.S musisz to zrobić we wszystkich plikach swojej strony, gdzie "/" są wyświetlane.
saracoratello
na podstronie mam taki skrypt zczytujący zawartośc strony
<head>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" />
<meta name="Description" content="" />
<meta name="Keywords" content="" />
<meta name="Author" content="" />
<meta name="Generator" content="kED2" />

<style type="text/css">
p{font-family:arial, monospace; color:065c7f; background-image: url('krata.jpg') }
.uwaga{font-family:arial; font-weight:bold; font-size:medium; color:red; background-image: url('krata.jpg')}
.mocne{font-family:arial, monospace; font-weight:bold; color:065c7f; background-image: url('krata.jpg')}
.podkr{font-family:arial, monospace; font-weight:bold; color:red; text-decoration:underline; background-image: url('krata.jpg')}
a:link {color:065c7f; background:fffff; font-family:arial, monospace; font-weight:bold; font-size:medium; background-image: url('krata.jpg')}
</style>
<title>Egzaminy Gimnazjalne</title>

</head>
<body topmargin="0" rightmargin="60">
<center>
<?php
$name="politechnika"; //tylko tu zmieniasz na nazwe pliku bez rozszeżenia
$plik=fopen($name.".txt","r");
$tekst=fread($plik, filesize($name.".txt"));
fclose($plik);
echo $tekst;
?>


</center>
</body>
</html>

gdzie w nim dac tą funkcje stripslashes?

oki juz dziala smile.gif
=kokos=
też w linijce

  1. <?php
  2. echo $tekst;
  3. ?>

analogicznie jak w poprzednim poście.

I wszędzie tam gdzie wyświetlasz dane te z pliku albo z bazy. Zerknij sobie do manuala na te funkcje:

addslashes
stripslashes
get_magic_quotes_gpc()
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.