HTTP-Authentifizierung geschlossen 

Status
Für weitere Antworten geschlossen.

jakob2010

Registered +
Registriert
Nov. 2007
Beiträge
35
Problem hat sich erledigt - Thread closed


Hey Leutz,

ich habe ein Gästebuch-Script, in dem ich die Codeteile der HTTP-Authentifizierung für den Login-Bereich (Admin-Bereich) des Gästebuchs entfernen möchte.
Also sodass ich auch ohne die Login-Daten eigeben zu müssen, in den Admin-Bereich komme.


Hier der Code:
PHP:
// #########################
// ### Gästebuch 2.7.0.1 ###
// #########################

// *********************
// *** Einstellungen ***
// *********************

// Titel des Gästebuchs.
$GuestbookTitle = "Mein Gästebuch";

// Style des Gästebuches ("default" entspricht "default.css").
// (Die Stylesheet-Datei sollte an die eigene Seite angepasst werden.)
$GuestbookStyle = "default";

// Relativer Pfad zu der Datei, in der die Daten gespeichert werden.
$DataFile = "guestbook.dat";

// Relativer Pfad zum Verzeichnis, in dem sich die Bilder (space1.gif) befinden.
$ImagesPath = "http://www.freesoft-board.to/images/";

// Relativer Pfad zum Verzeichnis, in dem sich die Smilies befinden.
// Ist kein Pfad angegeben, werden keine Smilies angezeigt. 
$SmiliesPath = $ImagesPath."smilies/";

// Anzahl der Beiträge pro Seite.
$PostsPerSite = 10;

// Administration
$AdminLogin = "admin"; // BITTE ÄNDERN!
$AdminPasswd = "password"; // BITTE ÄNDERN!

// Zeigt den Link zur Anmeldung als Administrator an.
$ShowAdminLink = false;

// ############################################################################

define("INTERN_CALL", "1");

$action = substr(GetParam("g_action", "G"), 0, 5);
$entry = substr(GetParam("g_entry", "G"), 0, 14);
$first = intval(substr(GetParam("g_first", "G"), 0, 5));

$send = GetParam("p_send", "P");
$gb_name = GetParam("p_gb_name", "P");
$gb_mail = GetParam("p_gb_mail", "P");
$gb_home = GetParam("p_gb_home", "P");
$gb_text = GetParam("p_gb_text", "P");

if ($action == "login") {
AuthUser();
} else if ($action == "del") {
if ((GetParam("PHP_AUTH_USER", "S") == $AdminLogin) && (GetParam("PHP_AUTH_PW", "S") == $AdminPasswd)) {
DelPosting($DataFile, $entry);
}
}
?>





[TABLE]
[TR]
[td]


$err_text = "";

if ($action == "post") {
if (strlen($gb_text) > 1000) {
$gb_text = substr($gb_text, 0, 1000)."... (Text wurde gekürzt!)";
}
$gb_name = str_replace(chr(34), "''", $gb_name);
$gb_name = stripslashes($gb_name);
$gb_mail = strtolower(stripslashes($gb_mail));
$gb_home = strtolower(stripslashes($gb_home));
$gb_text = stripslashes(trim($gb_text));

if(trim($gb_name == "")) $err_text .= "Bitte gib Deinen Namen an.
";
if(trim($gb_mail != "")) {
if (!ereg("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,6})$", $gb_mail))
$err_text.="Bitte gib eine gültige E-Mail-Adresse an (z.B.: vorname.nachname@provider.at).
";
}
if(trim($gb_home!="") && trim($gb_home != "http://")) {
if((!ereg("^http:\/\/(.{3,})\.(.{2,})", $gb_home)) || (ereg("\?", $gb_home)))
$err_text .= "Bitte gib eine gültige URL an (z.B.: http://www.seite.at/).
";
}

if (trim($gb_text == "")) $err_text .= "Bitte gib einen Text ein.
";
}

// ******************************
// *** Neuer Gästebucheintrag ***
// ******************************
if ( ($action=="new") or trim($err_text != "") ) {

echo '
[HEADING=1]'.$GuestbookTitle.'[/HEADING]
'."\n";
echo '
[HEADING=1]Neuen Gästebucheintrag hinzufügen[/HEADING]
'."\n";

if(($send=="1") && trim($err_text!="")) {
echo '
[B]Fehler:[/B]
';
echo "$err_text
\n";
}
if(trim($gb_home=="") && (!$gb_home)) $gb_home="http://";
?>


?g_action=post" method="post" name="guestbook">

 $gb_name = str_replace(" $gb_name = str_replace(">", ">", $gb_name);
$gb_name = str_replace("\"", """, $gb_name);

$gb_home = ereg_replace("(| |\(|\)|\||\"|\')", "", $gb_home);

$gb_text = str_replace(" $gb_text = str_replace(">", ">", $gb_text);
$gb_text = str_replace("\"", """, $gb_text);
?>

[TABLE]
[TR]

[td]

[TABLE]

[TR]
[RIGHT][td][RIGHT]Dein Name:[/RIGHT][/td][td][RIGHT] [/RIGHT][/td][/RIGHT]
[/TR]

[TR]
[RIGHT][td][RIGHT]Deine E-Mail-Adresse: [B]*[/B][/RIGHT][/td][/RIGHT]
[/TR]

[TR]
[RIGHT][td][RIGHT]Deine Homepage: [B]*[/B][/RIGHT][/td][/RIGHT][td] [/td]
[/TR]

[TR]
[RIGHT][td][RIGHT]Text:
[I](max. 1.000 Zeichen,
keine HTML-Tags)[/I][/RIGHT][/td][/RIGHT]
[/TR]


[TR]
[td][B]*[/B][I] = optionale Felder[/I][/td][td]


[/td]
[/TR]

[/TABLE]

[/td]
[td]  [/td][td]

if($SmiliesPath) {
?>
[B]SMILIES:[/B]

[IMG]https://finale.freesoft-board.to/<?=$ImagesPath?>space1.gif[/IMG]

[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_smile_:');'][IMG alt=":_smile_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>smile.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_wink_:');'][IMG alt=":_wink_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>wink.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_happy_:');'][IMG alt=":_happy_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>happy.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_sad_:');'][IMG alt=":_sad_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>sad.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_puh_:');'][IMG alt=":_puh_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>puh.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_yummie_:');'][IMG alt=":_yummie_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>yummie.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_coool_:');'][IMG alt=":_coool_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>coool.gif[/IMG][/URL]

[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_pukey_:');'][IMG alt=":_pukey_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>pukey.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_devil_:');'][IMG alt=">:->"]https://finale.freesoft-board.to/<?=$SmiliesPath?>devil.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_frown_:');'][IMG alt=":_frown_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>frown.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_redface_:');'][IMG alt=":_redface_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>redface.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_clown_:');'][IMG alt=":_clown_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>clown.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_cry_:');'][IMG alt=":_cry_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>cry.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_idea_:');'][IMG alt=":_idea_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>idea.gif[/IMG][/URL]

[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_cwink_:');'][IMG alt=":_cwink_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>cwink.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_grrr_:');'][IMG alt=":_grrr_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>grrr.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_ill_:');'][IMG alt=":_ill_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>ill.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_tooth_:');'][IMG alt=":_tooth_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>tooth.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_psycho_:');'][IMG alt=":_psycho_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>psycho.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_monster_:');'][IMG alt=":_monster_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>monster.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_halt_:');'][IMG alt=":_halt_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>halt.gif[/IMG][/URL]

[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_glass_:');'][IMG alt=":_glass_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>glass.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_seek_:');'][IMG alt=":_seek_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>seek.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_super_:');'][IMG alt=":_super_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>super.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_help_:');'][IMG alt=":_help_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>help.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_boxer_:');'][IMG alt=":_boxer_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>boxer.gif[/IMG][/URL]

[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_dance_:');'][IMG alt=":_dance_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>dance.gif[/IMG][/URL] 
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':_alcohol_:');'][IMG alt=":_alcohol_:"]https://finale.freesoft-board.to/<?=$SmiliesPath?>alcohol.gif[/IMG][/URL]

[IMG]https://finale.freesoft-board.to/<?=$ImagesPath?>space1.gif[/IMG]


[B]EMOTICONS:[/B]

[IMG]https://finale.freesoft-board.to/<?=$ImagesPath?>space1.gif[/IMG]

[URL='https://finale.freesoft-board.to/javascript:add_smilie('>:->');'][IMG alt="Evil grin"]https://finale.freesoft-board.to/<?=$SmiliesPath?>evilgrin.png[/IMG][/URL]
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':->');'][IMG alt="Grin"]https://finale.freesoft-board.to/<?=$SmiliesPath?>grin.png[/IMG][/URL]
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':-)))');'][IMG alt="Happy"]https://finale.freesoft-board.to/<?=$SmiliesPath?>happy.png[/IMG][/URL]
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':-)');'][IMG alt="Smile"]https://finale.freesoft-board.to/<?=$SmiliesPath?>smile.png[/IMG][/URL]
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':-O');'][IMG alt="Surprised"]https://finale.freesoft-board.to/<?=$SmiliesPath?>surprised.png[/IMG][/URL]
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':-P');'][IMG alt="Tongue"]https://finale.freesoft-board.to/<?=$SmiliesPath?>tongue.png[/IMG][/URL]
[URL='https://finale.freesoft-board.to/javascript:add_smilie(':-(');'][IMG alt="Unhappy"]https://finale.freesoft-board.to/<?=$SmiliesPath?>unhappy.png[/IMG][/URL]
[URL='https://finale.freesoft-board.to/javascript:add_smilie(';-)');'][IMG alt="Wink"]https://finale.freesoft-board.to/<?=$SmiliesPath?>wink.png[/IMG][/URL]

[IMG]https://finale.freesoft-board.to/<?=$ImagesPath?>space1.gif[/IMG]

}
?>

[B]TAGS:[/B]

[TABLE]

[TR]
[CENTER][td][CENTER][B]:b:[/B][/CENTER][/td][td][CENTER] und [/CENTER][/td][td][CENTER][B]:/b:[/B][/CENTER][/td][/CENTER][td] für [B]fett[/B][/td]
[/TR]
[td]
[TR]
[CENTER][td][CENTER][B]:i:[/B][/CENTER][/td][td][CENTER] und [/CENTER][/td][td][CENTER][B]:/i:[/B][/CENTER][/td][/CENTER][td] für [I]kursiv[/I][/td]
[/TR]
[td]
[TR]
[CENTER][td][CENTER][B]:u:[/B][/CENTER][/td][td][CENTER] und [/CENTER][/td][td][CENTER][B]:/u:[/B][/CENTER][/td][/CENTER][td] für [U]unterstrichen[/U][/td]
[/TR]
[td][/td][/td][/td]
[/TABLE]
[td][td][td]
[/td]
[/td][/td][/td]
[/TR]
[/TABLE]
[td][td][td]
[/td][/td][/td]
[td][td][td][/td][/td][/td]
[td][td][td]

echo '[URL='https://finale.freesoft-board.to/'.GetParam(']Zurück zum Gästebuch[/URL]';
PrintPageBottom();
exit;
}

// **************************
// *** Gästebuch anzeigen ***
// **************************

echo '
[HEADING=1]'.$GuestbookTitle.'[/HEADING]
'."\n";

// *** Wenn Posting "gesendet" wurde und kein Fehlertext ausgegeben wurde ***
if (($send == "1") && trim($err_text == "")) {
$gb_date = date("YmdHis"); // Datum setzen
$m_date = date("d.m.Y, H:i:s"); // Datum für E-Mail-Benachrichtigung
$line = file($DataFile); // Daten in Array einlesen
rsort($line); // Array in umgekehrter Reihenfolgen sortieren

$gb_name = str_replace(" $gb_name = str_replace(">", ">", $gb_name);
$gb_name = str_replace("\"", """, $gb_name);
$gb_name = str_replace("~", "-", $gb_name);
$gb_name = str_replace(" ", "  ", $gb_name);
$gb_name = strip_tags($gb_name, "[B][I][U]");

$gb_home = ereg_replace("(| |\(|\)|\||\"|\')", "", $gb_home);
$gb_home = str_replace("~","-", $gb_home);
$gb_home = urlencode($gb_home);
if (trim($gb_home == "http://")) $gb_home = "";

$gb_text = str_replace(" $gb_text = str_replace(">", ">", $gb_text);
$gb_text = str_replace("\"", """, $gb_text);
$gb_text = str_replace("~", "-", $gb_text);
$gb_text = str_replace(" ", "  ", $gb_text);
$gb_text = str_replace("\r\n", "
", $gb_text);
$gb_text = urlencode($gb_text);
$gb_text = strip_tags($gb_text, "[B][I][U]");

// *** Datei öffnen und mit neuem Eintrag überschreiben ***
$fp = fopen($DataFile, "w");
flock($fp, 2);
fputs($fp, "$gb_date|~#~|$gb_name|~#~|$gb_mail|~#~|$gb_home|~#~|$gb_text".chr(13).chr(10));

// *** Alte Einträge anhängen ***
for($i = 0; $i < count($line); $i++) {
fputs($fp, $line[$i]);
}
flock($fp, 3);
fclose($fp);

echo '
[CENTER][B]Danke für Deinen Eintrag![/B][/CENTER]

';

$gb_name = "";
$gb_mail = "";
$gb_home = "";
$gb_text = "";
$send = "";
$err_text = "";
}

echo '[URL='https://finale.freesoft-board.to/'.GetParam(']Neuen Gästebucheintrag hinzufügen[/URL]';

$line = @file($DataFile);
if ($line) {
// *** Startwert überprüfen und ggf. setzen ***
if ($first < 0) $first = 0;
if ($first > count($line) - 1) $first = count($line) - 1;
// *** Anzahl der Postings/Seite überprüfen und ggf. setzen ***
if ($PostsPerSite > count($line)) $PostsPerSite = count($line);

// *** Postings nach Startwert und Anzahl/Seite anzeigen ***
$c = $first + $PostsPerSite;
if ($c > count($line)) $c = count($line);
echo '
';
for($i = $first; $i < $c; $i++) {
$p = explode("|~#~|", trim($line[$i]), 5);
if((isset($p[0])) && ($i < count($line))) {
PrintPosting(count($line) - $i, $p[1], $p[2], $p[3], $p[0], $p[4]);
if ($i < $c - 1) PrintPostingSpace();
}
}
echo "
";

// Navigationslinks generieren
$i = count($line) + $PostsPerSite;
$j = $i;
echo '
Postings: ';
while ($j > 1) {
// Startwert für Link
$i -= $PostsPerSite;
if ($i < 1) $i = 1;
// Endwert für Link
$j = $i - $PostsPerSite + 1;
if ($j < 1) $j = 1;
// Umgekehrte Reihenfolge der Postings
$k = count($line) - $i;
// Navigationslinks ausgeben
echo '';
if($first == $k) {
echo '';
if ($i != $j) echo $i."-".$j; else echo $i;
echo '';
}else{
echo '[URL='https://finale.freesoft-board.to/'.GetParam(']';
if ($i != $j) echo $i."-".$j; else echo $i;
echo "[/URL]";
}
if ($j > 1) echo ' |';
echo '';
}
echo "
";

echo '[URL='https://finale.freesoft-board.to/'.GetParam(']Neuen Gästebucheintrag hinzufügen[/URL]';

}

if ($ShowAdminLink) {
echo '
[CENTER]Administration: [B][URL='https://finale.freesoft-board.to/'.GetParam(']Login[/URL][/B][/CENTER]
';
}

PrintPageBottom();
exit;

// ############################################################################

function PrintPosting($PostNo, $PostName, $PostMail, $PostHome, $PostTime, $PostMsg) {
global $ImagesPath, $SmiliesPath;
global $AdminLogin, $AdminPasswd;

$OrigTime = $PostTime;
$PostTime = substr($PostTime,6,2).".".substr($PostTime,4,2).".".substr($PostTime,0,4).", ".substr($PostTime,8,2).":".substr($PostTime,10,2).":".substr($PostTime,12,2);
$PostHome = urldecode($PostHome);
$PostMsg = urldecode($PostMsg);
$PostMsg = stripslashes(trim($PostMsg));

// Smilies ersetzen
if ($SmiliesPath) {
$PostMsg = eregi_replace("(\:\_)(.{1,8})(\_\:)", " [IMG alt="\\\2\"]https://finale.freesoft-board.to/\"".$SmiliesPath."\\2.gif\"[/IMG] ", $PostMsg);
$PostMsg = str_replace(":-)))", "[IMG alt="\Happy\"]https://finale.freesoft-board.to/\"".$SmiliesPath."happy.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":)))", "[IMG alt="\Happy\"]https://finale.freesoft-board.to/\"".$SmiliesPath."happy.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":-))", "[IMG alt="\Grin\"]https://finale.freesoft-board.to/\"".$SmiliesPath."grin.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":))", "[IMG alt="\Grin\"]https://finale.freesoft-board.to/\"".$SmiliesPath."grin.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":>", "[IMG alt="\Grin\"]https://finale.freesoft-board.to/\"".$SmiliesPath."grin.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":->", "[IMG alt="\Grin\"]https://finale.freesoft-board.to/\"".$SmiliesPath."grin.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":-)", "[IMG alt="\Smile\"]https://finale.freesoft-board.to/\"".$SmiliesPath."smile.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":)", "[IMG alt="\Smile\"]https://finale.freesoft-board.to/\"".$SmiliesPath."smile.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(";-)", "[IMG alt="\Wink\"]https://finale.freesoft-board.to/\"".$SmiliesPath."wink.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(";)", "[IMG alt="\Wink\"]https://finale.freesoft-board.to/\"".$SmiliesPath."wink.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":-(", "[IMG alt="\Unhappy\"]https://finale.freesoft-board.to/\"".$SmiliesPath."unhappy.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":(", "[IMG alt="\Unhappy\"]https://finale.freesoft-board.to/\"".$SmiliesPath."unhappy.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(">:->", "[IMG alt="\Evil"]https://finale.freesoft-board.to/\"".$SmiliesPath."evilgrin.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(">:>", "[IMG alt="\Evil"]https://finale.freesoft-board.to/\"".$SmiliesPath."evilgrin.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":-P", "[IMG alt="\Tongue\"]https://finale.freesoft-board.to/\"".$SmiliesPath."tongue.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":-p", "[IMG alt="\Tongue\"]https://finale.freesoft-board.to/\"".$SmiliesPath."tongue.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":P", "[IMG alt="\Tongue\"]https://finale.freesoft-board.to/\"".$SmiliesPath."tongue.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":p", "[IMG alt="\Tongue\"]https://finale.freesoft-board.to/\"".$SmiliesPath."tongue.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":-O", "[IMG alt="\Surprised\"]https://finale.freesoft-board.to/\"".$SmiliesPath."surprised.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":-o", "[IMG alt="\Surprised\"]https://finale.freesoft-board.to/\"".$SmiliesPath."surprised.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":O", "[IMG alt="\Surprised\"]https://finale.freesoft-board.to/\"".$SmiliesPath."surprised.png\"[/IMG]", $PostMsg);
$PostMsg = str_replace(":o", "[IMG alt="\Surprised\"]https://finale.freesoft-board.to/\"".$SmiliesPath."surprised.png\"[/IMG]", $PostMsg);
}
// Tags ersetzen
$PostMsg = eregi_replace("(:)(b|\/b)(:)", "", $PostMsg);
$PostMsg = eregi_replace("(:)(i|\/i)(:)", "", $PostMsg);
$PostMsg = eregi_replace("(:)(u|\/u)(:)", "", $PostMsg);

if ($PostMail != "") {
$em = explode("@", $PostMail);
$m = str_replace("@", " [at] ", $PostMail);
$m = str_replace(".", " [dot] ", $m);
$PostMail = "mailto:".$m;
}

if ($PostHome == "http://") $PostHome = "";

include("inc_item.php");

if ((GetParam("PHP_AUTH_USER", "S") == $AdminLogin) && (GetParam("PHP_AUTH_PW", "S") == $AdminPasswd)){
echo '[URL='https://finale.freesoft-board.to/'.GetParam(']Eintrag löschen[/URL]
';
}
}

// ############################################################################

function PrintPostingSpace() {
global $ImagesPath;
// HTML-Code der zwischen den Postings ausgegeben wird
}

// ############################################################################

function PrintPageBottom() {
global $ImagesPath;

// Das Entfernen des Copyright-Vermerkes oder des Links, sowie das Unkenntlichmachen
// des Copyright-Vermerkes oder des Links, ist ein Verstoß gegen das Urheberrecht und
// die Lizenzbestimmungen.

// Für weitere Fragen sowie für eine Genehmigung zum Entfernen des Copyright-Vermerks
// wenden Sie sich bitte an 

echo '
[CENTER][B]Copyright © 2004-2008 [URL='http://www.gaijin.at/']www.gaijin.at[/URL][/B][/CENTER]

'."\n";
echo "[/U][/I][/B][/U][/I][/B][/td][/td][/td][/td]
[/TR]
[/TABLE]
[td][td][td][B][I][U][B][I][U]\n";
echo "\n\n";
echo "\n";
}

// ############################################################################

function DelPosting($DataFile, $entry) {
if (!file_exists($DataFile)) return 0;
$lines = file($DataFile);
@unlink($DataFile);
$fp = fopen($DataFile, "w");
flock($fp, 2);
foreach ($lines as $line){
$l=explode("|~#~|", $line);
if ((chop($line)) && ($l[0] != $entry)) fputs($fp, $line);
}
flock($fp, 3);
fclose($fp);
return 1;
}

// ############################################################################

function GetParam($ParamName, $Method = "P", $DefaultValue = "") {
if ($Method == "P") {
if (isset($_POST[$ParamName])) return $_POST[$ParamName]; else return $DefaultValue;
} else if ($Method == "G") {
if (isset($_GET[$ParamName])) return $_GET[$ParamName]; else return $DefaultValue;
} else if ($Method == "S") {
if (isset($_SERVER[$ParamName])) return $_SERVER[$ParamName]; else return $DefaultValue;
}
}

// ############################################################################

function AuthUser() {
global $AdminLogin;
global $AdminPasswd;
if ((GetParam("PHP_AUTH_USER", "S") != $AdminLogin) || (GetParam("PHP_AUTH_PW", "S") != $AdminPasswd)) {
header('WWW-Authenticate: Basic realm="Gaijin Guestbook - Administration"');
header('HTTP/1.0 401 Unauthorized');
echo 'Authentifizierung erforderlich!

';
echo '[URL='https://finale.freesoft-board.to/guestbook.php']Zurück zum Gästebuch[/URL]
';
exit;
}
}

// ############################################################################

?>

Könnte mir bitte da mal jemand behilflich sein??

Danke euch ;)


lg, Jakob[/U][/I][/B][/U][/I][/B][/td][/td][/td]
 
Hey Leutz,

ich habe ein Gästebuch-Script, in dem ich die Codeteile der HTTP-Authentifizierung für den Login-Bereich (Admin-Bereich) des Gästebuchs entfernen möchte.
Also sodass ich auch ohne die Login-Daten eigeben zu müssen, in den Admin-Bereich komme.

Das halte ich für keine gute Idee, aber nun gut wenn Du meinst.

Der Header für die Abfrage ist hier
PHP:
// ############################################################################

function AuthUser() {
global $AdminLogin;
global $AdminPasswd;
if ((GetParam("PHP_AUTH_USER", "S") != $AdminLogin) || (GetParam("PHP_AUTH_PW", "S") != $AdminPasswd)) {
header('WWW-Authenticate: Basic realm="Gaijin Guestbook - Administration"');
header('HTTP/1.0 401 Unauthorized');
echo 'Authentifizierung erforderlich!

';
echo '[URL='https://finale.freesoft-board.to/guestbook.php']Zurück zum Gästebuch[/URL]
';
exit;
}
}

// ############################################################################

Wenn Du im Script das Änderst sollte es ohne gehen
PHP:
if ($action == "login") {
//AuthUser();
$_SERVER['PHP_AUTH_USER'] = $AdminLogin;
$_SERVER['PHP_AUTH_PW'] = $AdminPasswd;
} else if ($action == "del") {
if ((GetParam("PHP_AUTH_USER", "S") == $AdminLogin) && (GetParam("PHP_AUTH_PW", "S") == $AdminPasswd)) {
DelPosting($DataFile, $entry);
}
}

Aber wie gesagt ich würde das nicht tun, dann kann ja jeder im Adminbereich spielen wie er will.

-bronco
 
Sorry, hätte ich evtl. noch erwähnen sollen, warum das ganze...
Also mein Server unterstützt keine HTTP-Authentifizierung (womit man aber in den Admin-Bereich kommt), deshalb hat mir der Entwickler des Scripts folgendes geraten:
In würde in den Einstellungen die Variable $ShowAdminLink auf
FALSE setzen, damit der Admin-Link nicht mehr angezeigt wird.

In einem eigenen Verzeichnis, das mit .htaccess geschützt wird, kannst
du eine Kopie des Gästebuch-Scripts ablegen, in dem die Variable
$ShowAdminLink auf TRUE gesetzt ist. Anschließend entfernst du die
Codeteile für die Authentifizierung.

Somit kannst nur du - nach der Authentifizierung per .htaccess - auf
die Administrationsfunktionen zugreifen.

Nun habe ich einfach guestbook.php kopiert, also in guestbook_kopie.php und habe darin den Admin-Link auf true gesetzt. Nun wollte ich wie beschrieben "die Codeteile für die Authentifizierung entfernen".
Danach würde ich es dann mit htaccess schützen.



Nun habe ich es leider nicht so ganz verstanden, was du mir vorschlägst zu machen @Bronco200. :confused:
Also ich soll
PHP:
// ############################################################################

function AuthUser() {
global $AdminLogin;
global $AdminPasswd;
if ((GetParam("PHP_AUTH_USER", "S") != $AdminLogin) || (GetParam("PHP_AUTH_PW", "S") != $AdminPasswd)) {
header('WWW-Authenticate: Basic realm="Gaijin Guestbook - Administration"');
header('HTTP/1.0 401 Unauthorized');
echo 'Authentifizierung erforderlich!

';
echo '[URL='https://finale.freesoft-board.to/guestbook.php']Zurück zum Gästebuch[/URL]
';
exit;
}
}

// ############################################################################
mit
PHP:
if ($action == "login") {
//AuthUser();
$_SERVER['PHP_AUTH_USER'] = $AdminLogin;
$_SERVER['PHP_AUTH_PW'] = $AdminPasswd;
} else if ($action == "del") {
if ((GetParam("PHP_AUTH_USER", "S") == $AdminLogin) && (GetParam("PHP_AUTH_PW", "S") == $AdminPasswd)) {
DelPosting($DataFile, $entry);
}
}
ersetzen???

Sorry, habs nicht ganz gecheckt.

Kannst du mir bitte nochmal schreiben, was ich genau löschen soll und was ich mit was ersetzen soll.

Danke ;)


lg
 
Hi,

nicht ganz :)

Das sind beides Codeteile aus dem Script.
Das erste ist die Funktion mit Namen AuthUser in der der Header aufgerufen wird.
Das war nur so als Anhaltspunkt gedacht.

Der zweite Teil ist der für dich relevante, da ist die Funktion AuthUser auskommentiert und dafür werden die Server Variablen mit den Werten versorgt die im Script benötigt werden.

Ersetzten musst Du das
PHP:
if ($action == "login") {
AuthUser();
} else if ($action == "del") {
if ((GetParam("PHP_AUTH_USER", "S") == $AdminLogin) && (GetParam("PHP_AUTH_PW", "S") == $AdminPasswd)) {
DelPosting($DataFile, $entry);
}
}

mit dem

PHP:
if ($action == "login") {
//AuthUser();
$_SERVER['PHP_AUTH_USER'] = $AdminLogin;
$_SERVER['PHP_AUTH_PW'] = $AdminPasswd;
} else if ($action == "del") {
if ((GetParam("PHP_AUTH_USER", "S") == $AdminLogin) && (GetParam("PHP_AUTH_PW", "S") == $AdminPasswd)) {
DelPosting($DataFile, $entry);
}
}

-bronco
 
Ok, danke für die ausführliche Beschreibung. ;)
Habs wie von dir beschrieben gemacht, doch es funktioniert leider nicht...
Hier ist der Link: Gästebuch

Habs jetzt einfach mal ungeschützt gemacht, damit du es sehen kannst, sind ja noch keine wichtigen Einträge drin ;)

Man kann zwar auf Login klicken und dann erscheint auch "Eintrag Löschen".
Aber wenn man darauf klickt, wird der Eintrag nicht gelöscht.

Außerdem bezweifle ich, dass der gesamte Admin-Bereich nur aus diesen "Löschen"-Buttons besteht. Aber kann ja sein... :rolleyes:
 
Huii........

Also der eigentliche Wunsch ist ja schon mal erfüllt ;)

Nur das wird jetzt Debugging mit Remoteanleitung.

Naja egal.

Nimm das mal um z sehen ob er das gemacht hat was ich wollte.
PHP:
if ($action == "login") {
//AuthUser();
$_SERVER['PHP_AUTH_USER'] = $AdminLogin;
$_SERVER['PHP_AUTH_PW'] = $AdminPasswd;
} else if ($action == "del") {
echo "
if ((GetParam("PHP_AUTH_USER", "S") == $AdminLogin) && (GetParam("PHP_AUTH_PW", "S") == $AdminPasswd)) {
DelPosting($DataFile, $entry);
}
}

Da sollte jetzt eine Javascript Alert kommen, in denm der Benutzer steht.

-bronco
 
Thread kann geschlossen werden, ich habs mit Bronco privat per ICQ geklärt.
Hat sich also erledigt ;)
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben Unten