Da der Titel sonst zu lang geworden wäre präzisiere ich mich erst hier:
Ich habe eine Löschfunktion für meine Seite geschrieben, womit Kommentare, Shouboxeinträge und News gelöscht werden können. Funktioniert auch super. Am Ende des Scriptes soll die Startseite aufgerufen werden. Da liegt das Problem. Strukturiert ist meine Seite folgendermaßen:
In der index.php wird immer abgefangen, welche Angabe beim link gemacht wird:
index.php?link=news
Wenn nun etwas gelöscht wird ist es so, dass das Löschscript an einer Stelle in der index.php per include eingefügt wird.
Dieses Script sucht sich dann aus dem übergebenen Link die Variablen wie etwa die id des Eintrages heraus und löscht dann auch erfolgreich den betroffenen Eintrag.
Ein Beispiellink:
index.php?link=delete&item=news&id=8
Teil vom Script:
Da das Script ja aber nur in der index.php eingefügt ist durch include, nicht aber direkt aufgerufen wird, scheitert es die index.php per header('Location: ../index.php'); aufzurufen.
Wie bekomme ich es nun hin, dass ich die per GET bekommenen Variablen im Script verarbeiten und trotzdem nach Ablauf des Scriptes die index.php ohne Parameter automatisch aufrufen lassen kann? Ich kann natürlich auch die Werte an die .php Datei in der das Script enthalten ist direkt weitergeben, aber dieses direkte Ansteuern ist mir nicht so lieb.
Vielen Dank für eure Hilfe, wenns nicht klappt, steuer ich es eben direkt an.^^
Ich habe eine Löschfunktion für meine Seite geschrieben, womit Kommentare, Shouboxeinträge und News gelöscht werden können. Funktioniert auch super. Am Ende des Scriptes soll die Startseite aufgerufen werden. Da liegt das Problem. Strukturiert ist meine Seite folgendermaßen:
In der index.php wird immer abgefangen, welche Angabe beim link gemacht wird:
index.php?link=news
Wenn nun etwas gelöscht wird ist es so, dass das Löschscript an einer Stelle in der index.php per include eingefügt wird.
PHP:
switch($link) {
case 'news':
if(isset($_GET['id'])) {
include('includes/comments.php');
} else {
include('includes/news.php');
}
break;
case 'submitnews':
require('includes/submitnews.php');
break;
case 'delete':
include('includes/deleteentry.php');
break;
default:
include('includes/news.php');
break;
}
Dieses Script sucht sich dann aus dem übergebenen Link die Variablen wie etwa die id des Eintrages heraus und löscht dann auch erfolgreich den betroffenen Eintrag.
Ein Beispiellink:
index.php?link=delete&item=news&id=8
Teil vom Script:
PHP:
session_start();
$item = $_GET['item'];
$id = $_GET['id'];
/*
Hier fehlt ein Stück Code, ist auch irrelevant
*/
$sql = "DELETE FROM " . $item . " WHERE id = '" . $id . "'";
/*
Hier fehlt ein Stück Code, ist auch irrelevant
*/
mysql_close($verbindung);
// Wenn alles geklappt hat =>
$_SESSION['meldung'] = 'Der gewünschte Eintrag wurde gelöscht!';
$_SESSION['farbe'] = 'positiv';
header('Location: ../index.php');
} else { // ansonsten, eben bei Fehlern =>
$_SESSION['meldung'] = 'Es wurde kein zu löschender Eintrag angegeben!';
$_SESSION['farbe'] = 'negativ';
header('Location: ../index.php');
}
?>
Da das Script ja aber nur in der index.php eingefügt ist durch include, nicht aber direkt aufgerufen wird, scheitert es die index.php per header('Location: ../index.php'); aufzurufen.
Wie bekomme ich es nun hin, dass ich die per GET bekommenen Variablen im Script verarbeiten und trotzdem nach Ablauf des Scriptes die index.php ohne Parameter automatisch aufrufen lassen kann? Ich kann natürlich auch die Werte an die .php Datei in der das Script enthalten ist direkt weitergeben, aber dieses direkte Ansteuern ist mir nicht so lieb.
Vielen Dank für eure Hilfe, wenns nicht klappt, steuer ich es eben direkt an.^^