Files
Kundenverwaltung/incs/update.php
T
adminandClaude Opus 5 e2124220e5 Initialer Commit: Kundenverwaltung (PHP/Smarty)
Bestehende Codebasis als Ausgangsstand aufgenommen.

- .gitignore: Kundendaten (uploads_*), Smarty-Compile-Cache
  (templates_c), Laufzeit-Temp und Datenbank-Dumps ausgeschlossen;
  Verzeichnisstruktur ueber .gitkeep erhalten
- .gitattributes: Zeilenenden normalisiert (LF im Repo),
  Binaerformate markiert
- db-backup.php: MySQL-Zugangsdaten kommen jetzt wie im Rest der
  Anwendung aus der externen Konfiguration statt hartkodiert aus der
  Datei; Passwort wird ueber eine temporaere Optionsdatei statt per
  Kommandozeile uebergeben, Fehler von mysqldump/gzip werden gemeldet,
  Aufraeumen aelterer Backups berechnet Jahr und Monat konsistent

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-28 16:41:18 +02:00

98 lines
1.8 KiB
PHP

<?php
function getthisversion()
{
$ret = 0;
if(!is_dir("./update/thisversion"))
{
if(!mkdir("./update/thisversion",0777,true))
{
$ret = -1;
}
}
if(!$ret)
{
if(!is_file("./update/thisversion/currentversion.txt"))
{
if(!file_put_contents ("./update/thisversion/currentversion.txt", "001"))
{
$ret = -1;
}
}
if(!$ret)
{
$thisversion = file("./update/thisversion/currentversion.txt");
$ret = $thisversion[0];
}
}
return $ret;
}
function checknewversion($thisversion)
{
$ret = 0;
if(is_file("./update/versions.php"))
{
include_once("update/versions.php");
if($versions[0][0] > $thisversion)
{
$ret = $versions[0][0];
}
}
else
{
$ret = -1;
}
return $ret;
}
function savenewversion($version)
{
if(!file_put_contents ("./update/thisversion/currentversion.txt", $version))
{
$ret = -1;
}
else $ret = 1;
return $ret;
}
function manageupdate($version, $newversion)
{
$err = 0;
if($newversion > $version)
{
$updated = update_tables($version,$newversion);
if($updated > $version)
{
$version = $updated;
if(savenewversion($version) == -1)
{
$err = error("Es wurde auf eine neue Version aktualisiert, es konnte aber nicht gespeichert werden, bitte schreiben sie ".$version." in die Datei update/thisversion/currentversion.txt");
}
else
{
ok("Ihr Programm wurde soeben auf die Version ".substr($version, 0, 1).".".substr($version, 1, 1).".".substr($version, 2, 1)." aktualisiert!");
}
}
elseif($updated == -1)
{
warning("Diese Version ist nicht bekannt, nichts geändert");
}
else
{
$err = error("Es trat ein Fehler beim Update auf!");
}
}
elseif($newversion < 0)
{
$err = error("Prüfung auf aktualisierungen fehlgeschlagen!");
}
if($newversion<$version)
$newversion = $version;
return array($err,$newversion);
}
?>