Hi David!
Warum schreibst du das Passwort eigentlich in eine Textdatei und nicht in das PHP-Script mit hinein ($Adminpasswort = 'irgendwas';)? an die Source wird idR niemand kommen, somit ist es dort sicherer. Du kannst dir natürlich auch eine Konfigurationsdatei à la:
<?php
$Adminpasswort = 'irgendwas';
/* sonstige Konfig-Einstellungen */
?>
bauen und diese dann am Anfang deines Scriptes includen. Riefe man sie direkt auf, so bekäme man natürlich nichts ausgegeben.
Das kann ich leider nicht, weil ein Script habe, mit dem man das Passwort in der Textdatei ändern kann:
<?php ### setup.php ###
$dateiname = "passwort.txt";
$errormsg = "";
if ($_POST['sent'] == 1) ## Es liegt ein Post aus dem Form vor
{
if (!isset($_POST['oldpw']) or !(strlen(trim($_POST['oldpw'])) > 0))
{
$errormsg = "Bitte geben Sie Ihr altes Passwort ein!<br>";
}
elseif (!isset($_POST['newpw']) or !(strlen(trim($_POST['newpw']))>0))
{
$errormsg .= "Bitte geben Sie ein neues Passwort ein!<br>";
}
elseif (!$handle = fopen($dateiname, "r+"))
{
$errormsg .= "Dateiproblem mit $dateiname!<br>Bitte versuchen Sie es später nochmals!";
}
elseif (!$oldpw = fread($handle,filesize($dateiname)))
{
$errormsg .= "Dateiproblem mit $dateiname!<br>Bitte versuchen Sie es später nochmals!";
}
elseif (trim($oldpw) != trim(md5($_POST['oldpw'])))
{
$errormsg .= "Ihr altes Passwort ist falsch!<br>";
}
elseif (0!=fseek($handle,0,SEEK_SET)) ## achtung ungewöhnlicher Rückgabewert
{
$errormsg .= "Dateiproblem mit $dateiname!<br>Bitte versuchen Sie es später nochmals!";
}
elseif (!fwrite($handle, trim(md5($_POST['newpw']))))
{
$errormsg .= "Dateiproblem mit $dateiname!<br>Bitte versuchen Sie es später nochmals!";
}
elseif (!fclose($handle))
{
echo "Dateiproblem mit $dateiname!<br>Bitte versuchen Sie es später nochmals!";
}
else
{
$errormsg = "Das Passwort wurde erfolgreich geändert<br>";
}
}
echo "<p style="color:red; font-weight:bold;">$errormsg</p>";
?>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
<input type="hidden" name="sent" value="1"></input>
Altes Passwort: <input type="password" name="oldpw" size="15"></input><p>
Neues Passwort: <input type="text" name="newpw" size="15" value="<?php echo "$newpw"; ?>"></input><p>
<input type="submit" name="submit" value="OK"></input></form>
Ursprünglich war es auch so, dass das Passwort nicht in einer Datei war, sondern in einer Variable. Aber ich will das Passwort online ändern können!
MfG,
schmichl