tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
5
ZUGRIFFE
205
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Myar Myar ist offline Mitglied Silber
    Registriert seit
    Dec 2007
    Beiträge
    79
    Hallöchen!

    Nach erfolgloser Suche im Internet wende ich mich nun an euch.

    Mein Problem ist, dass ich im Moment per Hyperlink eine variable übergebe die per $_GET abgefragt wird uns somit z.B. bestimmter Content geladen wird.

    Also:
    Code :
    1
    
    <a href="?showpage=schoeneSeite>Gehe zur schönen Seite</a<
    Und dann in der Adresszeile steht: http://www.eineDomain.de/?showpage=schoeneSeite

    Nun will ich aber verhindern, dass ein Benutzer über die Seiten navigieren kann, indem er einfach in der Adresszeile einen anderen Wert für die Variable eingibt.

    Da ich nichts finden konnte, dass derartige Dinge abfängt, dachte ich mir, es wäre doch praktisch, dann mit $_POST zu arbeiten, da dann die Variable nicht in der Adressleiste angezeigt wird.

    Jetzt frage ich mich nur, wie das funktionieren soll, einen ganz normalen Hyperlink darzustellen, dieser aber einen Wert irgendwo hin gibt.
    Dieser Wert ist auch noch dynamisch, also der Link kann von User zu User anders aussehen, je nachdem welche Faktoren aus der DB zusammen kommen. Und er wird halt benötigt um andere Aktionen hervorzurufen, da der Aufruf von index.php überprüft, wohin man navigiert und dementsprechend unterschiedliche Klassen aufruft.

    Nun suche ich händeringend nach einem System, dass irgendwie funktionieren könnte.

    Bin für jede Hilfe dankbar!

    Gruß
    Myar
     

  2. #2
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Die POST-Methode dient eigentlich nur für Anfragen, die serverseitig eine Veränderung von Daten verursacht. Wenn du Manipulationen der URL verhindern willst, musst du das anders angehen. Wobei gesagt werden muss, dass auch POST-Anfragen manipuliert werden können.

    Aber was genau stört dich daran eigentlich?
     
    Markus Wulftange

  3. #3
    Avatar von Flex
    Flex Flex ist offline (aka Felix Jacobi)
    tutorials.de Moderator
    Registriert seit
    Nov 2001
    Ort
    Wuppertal
    Beiträge
    5.295
    Blog-Einträge
    65
    Da Werte aus der Datenbank kommen, vermute ich, dass es sich um eine Art Quiz oder Spiel handelt, in denen die Leute dann eventuell Daten manipulieren können.

    Deshalb würde ich zu Sessions raten.
     
    KIDS Kinderbetreuungsdienst
    Xing

    "When you play the game of thrones, you win or you die. There is no middle ground."
    by Cersei Lannister in "A Game Of Thrones"

  4. #4
    Myar Myar ist offline Mitglied Silber
    Registriert seit
    Dec 2007
    Beiträge
    79
    Ja genau, felix hat recht. Es ist ein Spiel. Und das navigieren über die Adressleiste ist insofern störend, daman Situationsbedingt zum Beispiel zum Wechseln eines Standortes was bezahlen muss.

    Natürlich könnte ich auch sagen, dass jeder Auftruf einer Standortseite den Abzug eines bestimmten Geldbetrages mit sich zieht und somit der User da ruhig rumriesen kann.
    Aber a) soll es auch situationsbedingt kostenlose reisen geben und b) wird beim einloggen und auswählen des Chars nachgeschaut, wo dieser sich zuletzt befand. Wenn man dann an einem Standort ist, wohin die Reise etwas kostet, wäre es unfair dann wieder Geld abzubuchen.

    Also muss ich erst immer gucken, welche Situation vorliegt, um dann anzuweisen, was abzubuchen (oder auch andere Aktionen auszuführen, das Geldabbuchen ist nur grad ein spezielles Beispiel, auch adnere Daten währen in "Gefahr").

    Wie genau ich da die Session anwenden soll, kann ich noch nicht nachvollziehen.
    Bisher ist die Session zuständig, zu verhindern, dass man ohne einloggen spielen kann. Mehr nicht.
    ....
    Achso! Klar, beim klick auf den Link also den Variablenwert an eine Sessionvariable übergeben. Aber wie? Also wie müsste der Link dann aussehen?

    Gruß
    Myar
     

  5. #5
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Du musst selbstverständlich vorher prüfen, ob die Aktion erlaubt ist, in deinem Fall also, ob das Reisen erlaubt ist. Und auch wenn du eine Sitzung einsetzt, macht es diese Prüfung nicht überflüssig.
     
    Markus Wulftange

  6. #6
    Myar Myar ist offline Mitglied Silber
    Registriert seit
    Dec 2007
    Beiträge
    79
    Was ich also brauche, wäre sowas wie eine zwischenfunktion, welche die Variable setzt und die Prüfung übernimmt.
    Wo ich ja wieder vor dem Problem stehe, dass ich einen Submit Button bräuchte, der in ein Form eingebettet ist und dann die Funktion aufrufen kann und dieser die benötigten Parameter übergeben.

    Da wäre wieder mein Problem, ich woltle eigentlich nicht die Navigation aus Buttons bestehen haben.
    Bzw. könnte ich dann doch bei GET bleiben, wenn ich erst noch ein Prüffunktion einbauen muss, die halt vor jedem neuen Seitenaufruf durchlaufen wird.

    Oder sehe ich das nun falsch?

    Gruß
    Myar
     

Ähnliche Themen

  1. Antworten: 8
    Letzter Beitrag: 03.07.09, 11:13
  2. Antworten: 4
    Letzter Beitrag: 16.06.09, 15:01
  3. variable mit post/get übergeben
    Von sandroP im Forum PHP
    Antworten: 7
    Letzter Beitrag: 02.02.09, 13:26
  4. arrays per post übergeben?
    Von Paspirgilis im Forum PHP
    Antworten: 5
    Letzter Beitrag: 06.05.08, 22:34
  5. Antworten: 6
    Letzter Beitrag: 01.06.06, 09:29