You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
171 lines
4.3 KiB
PHP
171 lines
4.3 KiB
PHP
<?php
|
|
// error_reporting(0);
|
|
set_include_path('.');
|
|
$browser = get_browser();
|
|
if (!$browser->cookies)
|
|
{
|
|
echo "Please enable cookies.<br>\n";
|
|
echo "Cookies are needed to view this page.\n";
|
|
exit;
|
|
}
|
|
session_start();
|
|
|
|
if ($_GET["update"] == 'j'){
|
|
|
|
// Einstellungen laden
|
|
include "sys/htmledit_inc.php";
|
|
|
|
|
|
$fname = $_GET["file"];
|
|
// echo $fname;
|
|
if ($lfile = fopen($fname, 'r')){
|
|
for($y=1; $y<$_GET["zlnr"]; $y++) {
|
|
$fbuffer[$y] = fgets ($lfile, 4096);
|
|
if(feof ($lfile)){
|
|
echo 'Eof zu früh erreicht.';
|
|
exit;
|
|
}
|
|
}
|
|
$wbuffer = fgets ($lfile, 4096);
|
|
$xtag = '<!'.$_GET["tag"].'=';
|
|
|
|
// Alle Werte von dem erstenlink nach $link[0]
|
|
$l = 0;
|
|
$link_pos = strpos($wbuffer,$xtag);
|
|
$line[$l++] = substr($wbuffer,0,$link_pos);
|
|
$wbuffer = substr($wbuffer,$link_pos);
|
|
|
|
// Alle Tags aufsplitten
|
|
while((strpos($wbuffer,$xtag) !== false )){
|
|
$link_pos = strpos($wbuffer,'>')+1;
|
|
$line[$l++] = substr($wbuffer,0,$link_pos);
|
|
$wbuffer = substr($wbuffer,$link_pos);
|
|
if ($l > 30){
|
|
echo 'Loop auf Stelle while-strpos.';
|
|
exit;
|
|
}
|
|
}
|
|
// Letzten rest übernehmen
|
|
$line[$l] = $wbuffer;
|
|
|
|
// Aktive Position bearbeiten
|
|
/*
|
|
// Testeinbau anfang
|
|
echo '$linepos:'.$linepos."\n";
|
|
echo '$_GET["linkneu"]'.$_GET["linkneu"]."\n";
|
|
echo '$_GET["zlnr"]'.$_GET["zlnr"]."\n";
|
|
echo '$_GET["lnknr"]'.$_GET["lnknr"]."\n";
|
|
echo "\nVorher:\n";
|
|
echo '$xbuffer:'.$xbuffer."\n";
|
|
echo '$line[0]:'.$line[0]."\n";
|
|
echo '$line[1]:'.$line[1]."\n";
|
|
echo '$line[2]:'.$line[2]."\n";
|
|
echo '$line[3]:'.$line[3]."\n";
|
|
echo '$line[4]:'.$line[4]."\n";
|
|
// Testeinbau ende
|
|
*/
|
|
|
|
// Tagzähler beginnt mit 0, linepos-tags beginnen bei 1
|
|
// linepos 0 ist der Text vor dem ersten tag
|
|
$linepos = $_GET["lnknr"] + 1;
|
|
|
|
// Taginhalt tauschen
|
|
if ($_GET["lnk2"] != ''){
|
|
$repl_param = $_GET["lnk1"].$trennzeichen.$_GET["lnk2"];
|
|
}
|
|
else{
|
|
$repl_param = $_GET["lnk1"];
|
|
}
|
|
$line[$linepos] = substr($line[$linepos],0,strpos($line[$linepos],$xtag)+strlen($xtag)).
|
|
$repl_param.
|
|
substr($line[$linepos],strpos($line[$linepos],'>'));
|
|
// Tagkennung berichtigen
|
|
if ($_GET["newtag"] != ''){
|
|
$line[$linepos] = str_replace($_GET["tag"],$_GET["newtag"],$line[$linepos]); // Tag in der Zeile berichtigen
|
|
$_GET["an"] = str_replace($_GET["tag"],$_GET["newtag"],$_GET["an"]); // Anker berichtigen
|
|
$_GET["tag"] = $_GET["newtag"]; // Tag übernehmen
|
|
}
|
|
|
|
/*
|
|
// Testeinbau anfang
|
|
echo "\nNachher:\n";
|
|
echo '$xbuffer:'.$xbuffer."\n";
|
|
echo '$line[0]:'.$line[0]."\n";
|
|
echo '$line[1]:'.$line[1]."\n";
|
|
echo '$line[2]:'.$line[2]."\n";
|
|
echo '$line[3]:'.$line[3]."\n";
|
|
echo '$line[4]:'.$line[4]."\n";
|
|
exit;
|
|
// Testeinbau ende
|
|
*/
|
|
for ($i=0;$i<=$l;$i++){
|
|
$fbuffer[$y] .= $line[$i];
|
|
}
|
|
// Restliche File lesen
|
|
while(!feof ($lfile)){
|
|
$fbuffer[++$y] = fgets ($lfile, 4096);
|
|
}
|
|
fclose($lfile);
|
|
// File wieder schreiben
|
|
if ($lfile = fopen($fname, 'w')){
|
|
for ($i=0;$i<=$y;$i++){
|
|
fwrite($lfile,$fbuffer[$i]);
|
|
}
|
|
fclose($lfile);
|
|
}
|
|
else{
|
|
echo('File '.$_GET["file"].' nicht zum Schreiben öffen !!!!');
|
|
exit;
|
|
}
|
|
}
|
|
else{
|
|
MsgNotFound('File '.$_GET["file"].' nicht finden !!!!');
|
|
exit;
|
|
}
|
|
}
|
|
|
|
/*
|
|
echo '&ap='. $_GET["ap"];
|
|
echo '&an='. $_GET["an"];
|
|
echo '&file='. $_GET["file"];
|
|
echo '&zlnr='. $_GET["zlnr"];
|
|
echo '&lnknr='. $_GET["lnknr"];
|
|
echo '&tag='. $_GET["tag"];
|
|
echo '&newtag='. $_GET["newtag"];
|
|
echo '&lnk1='. $_GET["lnk1"];
|
|
echo '&lnk2='. $_GET["lnk2"];
|
|
echo '&update='. $_GET["update"];
|
|
exit;
|
|
*/
|
|
|
|
?>
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
|
|
"http://www.w3.org/TR/html4/frameset.dtd">
|
|
<html>
|
|
<head>
|
|
<title><?php echo 'Edit-'.$_GET["tag"]?></title>
|
|
</head>
|
|
<frameset cols="250,*">
|
|
<?php
|
|
echo '<frame frameborder="1" noresize scrolling="auto" '.
|
|
'src="sys/htmledit.php?basis='.$_GET["basis"].
|
|
'&ap='. $_GET["ap"].
|
|
'&an='. $_GET["an"].
|
|
'&file='. $_GET["file"].
|
|
'&zlnr='. $_GET["zlnr"].
|
|
'&lnknr='. $_GET["lnknr"].
|
|
'&tag='. $_GET["tag"].
|
|
'&newtag='. $_GET["newtag"].
|
|
'&lnk1='. $_GET["lnk1"].
|
|
'&lnk2='. $_GET["lnk2"].
|
|
'&update='. $_GET["update"].
|
|
'">';
|
|
echo '<frame src="index.php?ap='.$_GET["ap"].'&an='.$_GET["an"].'&nonav=j&noadmin=j" name="main" >';
|
|
?>
|
|
<noframes>
|
|
<body>
|
|
<p>Ohne Framesets kein Edit</p>
|
|
</body>
|
|
</noframes>
|
|
</frameset>
|
|
</html>
|