kostenloser Webspace werbefrei: lima-city


Variabeln übergeben

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    w*******e

    Hallo

    Ich habe ein Script(datei1), das etwas bestimmtes ausf?hrt. Nachher soll dieses Script eine tag/meldung">Meldung in eine Variable speichern ($meldung="blabla";). Anschliessend soll datei1 auf datei2 weiterleiten und in datei2 wird nachher die Meldung ausgegeben (echo $meldung;).
    Wie kann ich es jetzt machen, dass die datei1 die Variable mit der Meldung bei der Weiterleitung ?bergibt.
    Wenn ich ja nur header("location: datei2"); mache, werden die Variabeln nicht ?bergeben.

    Wie kann ich es machen das die Variable ?bergeben wird?


    Ich hoffe ich konnte mich deutlich genug ausdr?cken, damit ihr mir helfen k?nnt.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. r*x

    am besten quellcode mit angeben^^

    MfG r1x
  4. Also da gibt es jetzt mehrere M?glichkeiten. Ich wei? nicht wie lang und "vertraulich" dein Text ist.

    Also es gibt Get! Da wird die Variable einfach an den link angeh?ngt.

    <?
      kekse = 2;
    
      echo "<a href=\"datei2.php?kekse=".$kekse."\">KEEEEEKKKSEEEEEEEEE</a>";
    ?>


    Wie du siehst macht man das mit einem Fragezeichen und dann kommt der name der Variable und dann der Wert. Wenn du einen zweiten Wert ang?ngen willst musst du dies aber mit einem kaufm?nnischem und (&) machen.

    Abrufen kannst du die Variable wie folgt:

    $_GET["name_der_variable"]

    oder

    $HTTP_GET_VARS["name_der_variable"]

    Nun zu Post! Dabei wird die variable nicht sichtbar ?bergeben, aber man br?uchte ein Formular daf?r und das ist in deinem Fall glaube ich nicht das richtige.
    <form action="datei2.php" method="post">
      Meldung: <br />
      <input type="Text" name="meldung">
      <input type="Submit" value="Absenden">
    </form>


    Diese k?nntest du dann so benutzen:

    $_POST["meldung"]

    oder

    $HTTP_POST_VARS["Meldung"]


    Dann k?nntest du den Text auch noch in einer Datenbank speichern. Das w?rde ich aber nur empfehlen wenn diese Text dauerhaft bleiben soll und nicht um ihn nur einmal zu verwenden.

    Dann gibt es noch Sessions und Cookies. Du musst am Anfang jedes Dokumentes in der du die Variable dann benutzen willst das hier schreiben. session_start();

    Und danach kannst du dann einfach $_SESSION["meldung"] = $meldung; machen.

    Hoffe du hast alles verstanden. Beim n?chsten mal bitte genauer sein, dann muss ich nicht so viel Mist schreiben. ;)

    Beitrag ge?ndert am 23.10.2005 10:59 von i-spacke
  5. c*********c

    Die einfachste Methode w?re, wenn Du den zu ?bergebenden Parameter mittels GET ?bergibst.
    Der passende Code dazu w?rde inetwa so lauten:

    <?
    $meldung = "blabla";
    header("Location: seite2.php?parameter=$meldung");
    ?>


    //edit: Zu sp?t!

    Beitrag ge?ndert am 23.10.2005 10:59 von compactdisc
  6. Autor dieses Themas

    w*******e

    hallo

    @i-spake
    Bei deinen M?glichkeiten m?sste der User ja immer auf einen Link oder Button klicken, damit es weitergeht. Ich m?chte aber eine Automatische Weiterleitung.

    @compactdisc
    Genau das habe ich gesucht. Vielen Dank!!
  7. Die Version von cd is aber nicht grade die beste L?sung. Das kannst du nur machen, wenn du davor nicht schon etwas azsgegeben hast und das will man ja meistens machen...also nicht so n?tzlich. Und bevor du sowas sagst solltest du dri vielleicht mal den ganzen Post durchlesen. Wenn du es mit Sessions machst oder mit Cookies brauchst du nirgendwo raufklicken und ebenso kannst du einfach mit einem meta-tag eine automatische Weiterleitung machen und wohi? Genau: datei2.php?kekse=".$kekse." oder sonstwo hin. -.-

    (Man ey immer diese undankbaren user, die selber kein St?ckchen mitdenken.)
  8. Autor dieses Themas

    w*******e

    @i-spake

    Sorry das du ein bisschen genervt bist.

    Ich dachte, wenn ich in meiner Frage schon vom Befehl header("location: datei2"); spreche, sei es klar, dass ich eine automatische Weiterleitung brauche, und dass ich vorher nichts ausgeben will.


    Ich habe mir schon den ganzen Post durchgelesen.
    Bei der Methode mit der Session oder den Cookies, wie w?rdest du dann weiterleiten?
    Du hast nur geschrieben, dass ich es in Sessions speichern k?nnte, aber wie die Weiterleitung nachher realisiert wird hast du nichts gesagt.

    Auch von Meta-Tags hast du nichts gesagt.


    Sorry das du dir so viel M?he genommen hast und es nicht meiner Vorstellung entsprach. N?chstes mal w?rde ich in der Frage statt Weiterleitung Automatische Weiterleitung schreiben.


    Sorry!
  9. Was ist denn daran so schwer zu verstehen? Wenn du sessions oder cookies benutzen willst, dann kannst du doch auch selber auf die Idee kommen header() zu verwenden. Und auch bei der Methode mit Get. Wenn du auf solch kleine Sachen nicht selber kommst solltest du vielleicht nochmal ganz von vorne mit PHP anfangen. Oder du lernst erstmal eine andere Sprache. (c++/c#)Dann lernst du dir selber einen kleinen Teil dazuzudenken. Man bekommt im Leben nicht alles auf dem goldenen Tablett pr?sentiert.

    Au?erdem hast du dich nicht klar genug ausgedr?ckt und bist selber Schuld. Lese dir deinen Post mal durch und du wirst sehen, dass da nur sehr wenig drin steht was man auch als Leser sinnvoll herausfischen kann. Und deine letzte Frage habe ich ja mindestens beantwortet.
  10. Autor dieses Themas

    w*******e

    Ja das w?re nat?rlich eine M?glichkeit, in die Session zu speichern und nachher mit header(). Aber die L?sung von CD hast du kritisiert, weil er header() verwendet hat.


    Wenn ich mich so undeutlich ausgedr?ckt habe, wie du es beschreibst, h?tt CD wahrscheinlich nicht auf Anhieb verstanden, was ich suche.
  11. Ich habe nur gesagt, dass die version nicht die beste ist, da man davor nichts ausgeben k?nnte und das will man eigentlich in den meisten F?llen. Au?erdem ist es so, dass wenn der Text ein bisschen l?nder ist es einfach shice in der Adresszeile aussieht und au?erdem sieht es eh nicht gerade fein aus, wenn da oben eine Meldung steht. Naja, aber ich will jetzt hier auch nicht noch weiter diskutieren.
  12. F?r eine ?bergabe von Daten geringer Gr??e gen?gt die Methode mit "?blabla=blubb" (URL-GET) v?llig. Bei gr??eren Datenmengen sind Sessions mit Cookies besser geeignet, da hier nicht der Umweg ?ber den Browser genommen werden muss. Ob die URL beim GET-Verfahren schei?e aussieht ist aber v?llig egal, denn wenn man PHP-Sessions verwendet, und der Browser keine Cookies kann, greift PHP auch auf die GET-Methode zur?ck.

    Welche Methode besser ist, GET oder POST (dazu geh?ren auch Session-Cookies) steht hier:

    http://www.php-faq.de/q/q-formular-methode.html

    Und das Problem allgemein ist auch hier gut erkl?rt:

    http://www.php-faq.de/q/q-variable-weitergeben.html

    MfG
    alopex
  13. Autor dieses Themas

    w*******e

    hallo

    Bei mir wird die Variable h?chstens 50Byte gross.

    Aber wenn ich Sessions verwenden w?rde, m?sste ich nachher immer wieder die Variable in der Session l?schen oder mit "" ?berschreiben (da datei2 nicht immer von datei1 aufgerufen wird, sondern auch mal von einer anderen und dann soll die Meldung ja nicht mehr dastehen).
    Wenn ich es aber mit der get-Methode mache, muss ich das nicht machen.
  14. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!