2016-06-03 7 views
0

Ich möchte ein Echo anzeigen, wenn eine Datei gelöscht wird. Zum Löschen von Dateien in einem Ordner verwende ich diese Schleife:Wie erstelle ich ein Echo, wenn eine Kopfzeile vorhanden ist?

if (isset($_GET['delete'])) { 
    // if is directory -> remove dir 
    if(is_dir($_GET['delete'])){ 
     removeDirectory($_GET['delete']); 
    } 
    // else (must be a file) -> unlink file 
    else { 
     unlink($_GET['delete']); 
    } 

    echo 'file successful deleted!'; // this echo is lost... 
    // back to dir 
    $dir = dirname(($_GET['delete'])); 
    header ("Location: ".'?dir='.$dir); 
    die(); 
} 

Aufgrund der Header-Position wird das Echo nicht angezeigt. Das ist schade. Gibt es eine Möglichkeit, dass ich auch dann noch ein Echo anzeigen kann, wenn sich eine Kopfzeile dahinter befindet?

+0

verwenden Javascript Umleitung oder für außergewöhnliche Fall- verwenden 'ob_start();' – Thamilan

+0

set_flash_message Sitzung mit –

Antwort

2

Wenn Sie einige Nachrichten an Benutzer zeigen und dann in diesem Fall umleiten Javascript verwendet Nachricht aufmerksam zu machen und

<?php 
echo("<script>alert('file successful deleted!')</script>"); 
echo("<script>window.location = 'home.php';</script>"); 
?> 
2

umleiten Es gibt keine Punkteinstellung Nachricht mit Echo, wenn Sie leitet und niemand wird sehen diese Nachricht. Statt sofort umleiten Verwendung einige Zeit für Umleitung, wie folgt aus:

$dir = dirname(($_GET['delete'])); 
header("refresh:5;url=?dir=".$dir); 
echo 'file successful deleted!'; 
    die();