PHP: GET Parameter nur einmal mitsenden?

  • [GELÖST]

    Hallo,
    ein Bild verlinkt auf einer Seite auf folgende Adresse:
    http://localhost/script/index.php?delete=118
    Alles ist natürlich entsprechend abgesicht....

    Hier wird nun also ein Eintrag gelöscht. Wenn ich nun in einer anderen
    Form der gleichen Seite auf einen Nächster-Button klicke, wird das Skript
    erneut geladen und anhand eines Algorythmus eine spezielle Seite mit
    Informationen angezeigt.

    Leider steht der Get Parameter ?delete weiterhin in der Adresse, sodass
    nach dem Löschen eines Eintrags nicht die gewünschten Funktionalitäten
    ausgeführt werden.

    Da dem Skript folgende Strukur vorliegt:

    Kennt da wer eine Lösung die Get Variable ?delte in der Url irgendwie
    wegzubekommen. Wenn ich eine Weiterleitung nach der Löschung des
    Eintrags auf index.php mache, wird ja erneut eine Infoseite geladen,
    was ja nicht sein soll.

    Danke

    Einmal editiert, zuletzt von Darkxor (10. Mai 2009 um 18:06)

  • Hallo,
    hier dann das ganze Script:
    Beachtet werden muss eigentlich nur:

    • Wiedervorlage löschen
    • und was passiert, wenn auf den Nächsten Button geklickt wird


    Da der Get Parameter auch nach dem Löschen der Wiedervorlage beim
    senden eines neuen Formulars mitgesendet wird, kommt das Script nicht
    bis zum prüfen des Buttons....
    Das unset() mit $_GET['delete'] bringt sozusagen nichts.


    [....Problem schon gelöst.]

    Einmal editiert, zuletzt von Darkxor (10. Mai 2009 um 18:02)

  • Also blicken tue ich deine Sache nocht nicht so wirklich aber das

    unset($_GET['delete']); nichts bringt ist klar


    du haus statt unset($_GET['delete']); eine Header weiterleitung rein ohne delete

    Aber ich glaube mal das das ganze von der Logik falsch aufgebaut ist

  • Zitat

    du haus statt unset($_GET['delete']); eine Header weiterleitung rein ohne delete

    Wie ich schon im ersten Post sagte:

    Zitat

    Wenn ich eine Weiterleitung nach der Löschung des
    Eintrags auf index.php mache, wird ja erneut eine Infoseite geladen,
    was ja nicht sein soll.

  • Du hast ein Konzept Fehler drin kannst du uns nicht genau mitteilen was du möchtest und wo das Problem genau ist, vllt mit Demo?

    mfg

  • Wenn ich eine Wiedervorlage anlege.
    Die Wiedervorlage lösche
    und dann auf weiter "Nächster" klicke,
    wird nur die aktuellse Seite neu geladen und der Status
    wird nicht verändert.

    Ich muss irgendwie die Get Url aus der Adressezeile bekommen
    was ja ohne Weiterleitung schlecht geht.

  • 1. warum den rausbekommen?

    2. richtig du kannst ihn ohne pfusch nicht ändern also darfst ihn auch gar nicht erst reinschreiben


    :confused::confused::confused:

    Ich glaub ich kann dir nicht helfen da ich dich nichtverstehe ohne Demo und so vllt steigt ja jemand anderes durch tut mir leid :)

  • Achso etzat du willst get wegen

    PHP
    [COLOR=#000000]                    <input type="submit" name="zurueck" value="&lt; Zurück" onClick="location.href = '[COLOR=#0000cc]<?php [/COLOR][COLOR=#006600]echo [/COLOR][COLOR=#cc0000]"http://"[/COLOR][COLOR=#006600].[/COLOR][COLOR=#0000cc]$_SERVER[/COLOR][COLOR=#006600][[/COLOR][COLOR=#cc0000]"HTTP_HOST"[/COLOR][COLOR=#006600]].[/COLOR][COLOR=#0000cc]$_SERVER[/COLOR][COLOR=#006600][[/COLOR][COLOR=#cc0000]"PHP_SELF"[/COLOR][COLOR=#006600]] . [/COLOR][COLOR=#cc0000]"?in="[/COLOR][COLOR=#006600].[/COLOR][COLOR=#0000cc]$_SESSION[/COLOR][COLOR=#006600][[/COLOR][COLOR=#cc0000]'lastint'[/COLOR][COLOR=#006600]] [/COLOR][COLOR=#0000cc]?>[/COLOR]';">
    [/COLOR]

    rausbekommen ?


    Warum machst du dann da keine if hin und je nach dem hängst du get delet dran oder nicht dran?

  • Zitat

    $_SERVER['PHP_SELF'] ist nicht empfehlenswert.


    Ich kenne bisher noch keinen Grund es nicht zu nutzen.

    Habe das Problem nun gelöst. Zwar nicht so die beste Lösung aber
    es geht nun.

    PHP
    foreach($wiedervorlagen as $wv) 
    {
        echo '<form name="wiedervorlagenausgeben" method="post" action="">';
    
        echo $wv->data['zeitpunkt'] . '&nbsp;&nbsp;<input src="delete.png" style="background-color:#FFFFFF; border:0px;" type="image" name="wvloeschen" title="Wiedervorlage löschen"><input type="hidden" name="wvdelid"  value="'.$wv->data['id'].'"><br>';
    
        echo '</form>';
    }

    Normalerweise würde ich das auch anders programmieren vom
    logischen Ablauf, jedoch war Anfangs von einigen Funktionalitäten
    gar nicht die Rede, die kamen erst nachher hinzu :)

  • Mensch schau doch mal was die Leute vor dir schreiben:P


    Wer hat hier vor mir etwas von xss (Attacken) erzählt? :eek: Also immer schön den Ball flach halten oder selber erst mal nachsehen.

  • Dann beim nächsten Mal nicht nur sagen das es schlecht ist sondern auch begründen, so kan man Beiträge sparen


    mfg

  • Alle Achtung, gleich am ersten Tag User zurechtweisen. Du weißt, wie man sich Freunde macht.