echo $begrüßung;
Viele Funktionen, so auch rename(), klären dich über den Erfolg oder Misserfolg ihrer Tätigkeit durch einen entsprechenden Rückgabeparameter auf. Was liefert dir rename() und wie reagiert den Script darauf?
rename() liefert überhaupt nix zurück (frag mich nicht warum).
Oh doch, nur sieht man manche Werte nicht, wenn man sie nur mit einem einfachen echo ausgibt. Verwende zum Anzeigen var_dump(), dann siehst du auch solche Werte wie false oder null statt eines Leerstrings wie bei echo.
Hier mal, wie ich das überprüft habe (vielleicht ist ja da der Fehler):
if (rename("/galerie/Screenshots/GothicI/".$_POST['Bild2']."", "/galerie/Screenshots/GothicI/".$_POST['neuername'].".jpg")) {
echo "TRUE";
} else {
echo "FALSE";
}
Also irgendetwas muss dieser Code ausgeben. Es sei denn, er kommt gar nicht zur Ausführung, weil eine frühere Entscheidung zu seinen Ungunsten ausgefallen ist. Prüfe in den Fall die Ergebnisse der Entscheidungsausdrücke (am besten mit mit var_dump()).
Übrigens, das Anhängen von Leerstring an Strings bewirkt überhaupt nichts und kann deshalb weggelassen werden.
Wie ist error_reporting und display_errors eingestellt und kommt eine Meldung, wenn du error_reporting auf E_ALL und display_errors auf 1 stellst?
error_reporting ist auf E_ALL gestellt und display_errors weiß ich nicht,
phpinfo() beantwortet diese Frage.
wie ich das eingeben soll (es kam immer irgendeine Fehlermeldung, egal ob ich eingab "display_errors = 1", "display_errors(1)", "display_errors("1")" oder "display_errors = "1"".
Auf dem Entwirklungsrechner sollte man das in der Konfiguration von PHP oder der des Verzeichnisses konfigurieren. Siehe dazu die Dokumentation zur Konfiguration PHPs im PHP-Handbuch.
Für einige Konfigurationswerte gibt es eigene Funktionen zum Einstellen, wie beispielsweise error_reporting() für den Parameter error_reporting. Für alle anderen Parameter[*] gibt es ini_set().
[*] Zumindest für die, die sich im Script-Kontext verstellen lassen.
echo "$verabschiedung $name";