Behält SESSION Daten auf Folgefenster nicht? Verzweiflung naht....!

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Behält SESSION Daten auf Folgefenster nicht? Verzweiflung naht....!

    Ich bin schon wieder immer noch am selben Problem (und das Verständnis hat sich nicht verbessert:
    Ich habe 2 Frameseiten (ich weis, viel sagen das ich nicht so dolle) ist aber auch grad gar nicht mein Problem.
    Ich will testen, wie es geht, dass ich mit 2 Button und zwei verschiedenen Eingaben von einer Frameseite auf eine andere Daten rüberbekomme. Das hat wunderbra geklappt. Mein problem. Es speichert aber nicht die Daten der einen Eingabe, wenn ich eine neue Eingabe mit dem weiteren Button dazufügen will. Ich verstehe es nicht. Ich werde zwar noch selber weiter lesen, bin aber langsam echt ratlos. Ich dachte mit Session lese ich ein und mit der anderen Ausgabe lese ich alles, was sich im /tmp befindet wieder aus. Ich habe schon probiert auf der "linken Frameseite" die daten in /tmp einzulese und nur auf der rechten seite wieder auslesen zu lassen. hat nichts gebracht. alles nur weiß im Browser. Jetzt hat das Nachfolgeskript alles im Frame auf der rechten Seite. für etwaiige Anregunge mit welchen Befehlen ich möglicherweiese noch arbeiten muss, bin ich sehr dankbar. Ich möchte nicht mit Cookies und Datenbank arbeiten. Das kommt alles zu einem späteren Zeitpunkt. Das Buch zur Datenbank liegt vor meiner Nase zur "Nochdurcharbietung".
    Recht vielen Dak für. evtl. Hilfe im Voraus.


    Das war ursprünglich.... jetzt kommt verbesserte Version!!!!!
    Danke bereits im Voraus, falls einer helfen möchte und kann.
    Daniel

    ACHTUNG. Das ist schon die neue funktionierende und ausgebesserte Version. Die urprünglich nicht speichernde aber recnende Funktion ist weiter unten!!!!!!!


    Frameeingan index.php
    ________________________
    EDIT:
    <? session_start();
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
    <html>
    <head>
    <title>Frameset</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <frameset cols="300,*" frameborder="YES" border="1" framespacing="0">
    <frame src="links.php?<?=SID?>" name="leftFrame" scrolling="NO" noresize>
    <frame src="rechts.php?<?=SID?>" name="rightFrame">
    </frameset>
    <noframes><body>
    </body></noframes>
    </html>




    __________________________________
    links.php
    __________________________________

    PHP-Code:
    <?
    session_start();
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
    <html>
    <head>
    <title>LEftframe</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body>


    <form name="form1" method="post" action="rechts.php?<?=SID?>" target="rightFrame">
    <input name="MengeRohrzange" type="text"> <br>
    <input type="submit" name="Rohrzange1" value="senden">
    </form>

    </body><html>

    _________________________________________
    rechts.php
    _____________________

    PHP-Code:
    <?
    session_start();
    ?>

    <?php



    // Rohrzange



    $_SESSION['MengeRohrzange'] = isset($_POST['MengeRohrzange'])?$_POST['MengeRohrzange']:'';
    if(
    $_SESSION['MengeRohrzange']>0) {

    session_register("SummeRohrzange");
    $SummeRohrzange=20*$_SESSION['MengeRohrzange'];


    echo 
    "Gesamtsumme: ";
    echo 
    $SummeRohrzange;
    echo 
    "<br>";
    echo 
    "gesicherte datei";
    echo 
    $_SESSION['SummeRohrzange'];
    echo 
    "<br>";
    echo 
    "Einzelsumme: ";
    echo 
    $_SESSION['MengeRohrzange'];
    if (
    $SummeRohrzange>$_SESSION['SummeRohrzange']) {
         
    session_unregister("SummeRohrzange");
         }
         if   (!
    $_SESSION['SummeRohrzange']) {
            
    session_register("SummeRohrzange");
               
    $SummeRohrzange=20*$_SESSION['MengeRohrzange'];
         }

    if (
    $SummeRohrzange<$_SESSION['SummeRohrzange']) {
         
    session_unregister("SummeRohrzange");
         }
         if   (!
    $_SESSION['SummeRohrzange']) {
            
    session_register("SummeRohrzange");
               
    $SummeRohrzange=20*$_SESSION['MengeRohrzange'];
         }

    }

    ?>

    Für Verbesserungen etc. bin ich absolut offen!!!
    Angehängte Dateien
    Zuletzt geändert von danmon; 04.04.2004, 21:13.

  • #2
    PHP-Code:
    session_register("Rohrzange");
    session_Register("SummeRohrzange"); 
    ist veraltet, schau mal ins Online-handbuch nach.

    www.php.net

    Um auf die Session in der näcsten Seite zugreifen zu können muss die aktuelle Sessionid vorhanden sein, endweder per cookies oder url übergeben.
    mfg
    marc75

    <Platz für anderes>

    Kommentar


    • #3
      Ich starte noch einmal einen Versuch. sonst wird es nächet dauern, bsi ich damit klarkomme. Es wird Sommer...


      gut. veraltet ja. ich gebe dir echt. aber dennoch funktionabel. ausser natürlich die Falschrschreibung session_Register.
      aber wie gesagt. das löst mein problem alles nicht. ich habe mich gestern zum x-ten mal eingelesen und zusätzlich mit deiner aussage klingte es so, als müsste ich direkt bei der Frameeingangsseite die SID bestimmen lassen und ständig als URL mitführen. Den Rest scheint PHP dann selsbtsäind zu machen.
      und die wichigste erkenntnis für mich: ich muss gar nicht stänig <?session_start()?> ausführen? er belibt im Ordenr solange, bis ich entweder zeitlich oder manuell mich auslogge?

      Daniel I'm

      Where ist the..... ????
      Zuletzt geändert von danmon; 31.03.2004, 20:10.

      Kommentar


      • #4
        letzter versuch. im ganzen net gibt es nix

        letzter Versuch..... <- und das scheint wohl noch lange zu bleiben.

        Kommentar


        • #5
          benutz mal [php]-tags. dann kann man das ganze auch lesen!

          Kommentar


          • #6
            mit den tags hast du recht... ich hatte das nur voller verzweiflung hier reingesetzt nach einem langen Tag. Ich werde mich beim nächsten mal dran halten. Zur Übersichtlichkeit fast unentbehrlich. Noch einmal: du hast recht

            Kommentar


            • #7
              es spricht nichts dagegen hier die edit-funktion zu benutzen

              BTW: die Ausrede zählt schon längst nicht mehr...

              Kommentar


              • #8
                Versuch der verbesserten Übersicht(auf die schnelle):

                DAS IST DIE URSPRÜNGLICH ALTE, NICHT-FUNKTIONIERENDE VARIANTE: VORNE DIE VARIANTE UND EINS AUF DER NÄCHSTN SEITE GEHT!!!!
                __________________________________________________________

                Frameeingangsseite.htm

                <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
                <html>
                <head>
                <title>Frameset</title>
                <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
                </head>

                <frameset cols="300,*" frameborder="YES" border="1" framespacing="0">
                <frame src="links.php" name="leftFrame" scrolling="NO" noresize>
                <frame src="rechts.php" name="rightFrame">
                </frameset>
                <noframes><body>
                </body></noframes>
                </html>

                ______________________________________________________

                Frame links = links.php


                PHP-Code:
                <?
                session_start();
                ?>



                <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
                <html>
                <head>
                <title>LEftframe</title>
                <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
                </head>

                <body>

                <form name="form1" method="post" action="rechts.php?<?php echo SID?>" target="rightFrame">
                <input name="MengeRohrzange" type="text"><br>
                <input type="hidden" name="Rohrzange" value="<?php echo session_id(); ?>">
                <input type="submit" name="Rohrzange1" value="senden">
                </form>


                <form name="form1" method="post" action="rechts.php?<?php echo SID?>" target="rightFrame">
                <input name="MengeHammer" type="text"><br>
                <input type="hidden" name="Hammer" value="<?php echo session_id(); ?>">
                <input type="submit" name="Hammer1" value="senden">
                </form>
                ___________________________________________________________

                Frame rechts = rechts.php

                <?
                session_start();
                ?>

                <?php
                //Rohrzange
                $MengeRohrzange=$_POST["MengeRohrzange"];
                if (
                session_id()) 
                {
                session_register("Rohrzange");
                session_Register("SummeRohrzange");
                $Rohrzange=20;
                $SummeRohrzange$Rohrzange*$MengeRohrzange;
                }
                ?>

                <?php
                if($SummeRohrzange>0) {
                echo 
                "Summe: ";
                echo 
                $SummeRohrzange;
                echo 
                "<br>";
                echo 
                "MengeRohrzange: ";
                echo 
                $MengeRohrzange " Stück zu je: " $Rohrzange " €";
                echo 
                "<hr>";
                }
                ?>


                <?php
                // Hammer
                $MengeHammer=$_POST["MengeHammer"];
                if (
                session_id()) 
                {
                session_register("Hammer");
                session_Register("SummeHammer");
                $Hammer=10;
                $SummeHammer$Hammer*$MengeHammer;
                }

                ?>

                <?php
                if($SummeHammer>0) {
                echo 
                "Summe: ";
                echo 
                $SummeHammer;
                echo 
                "<br>";
                echo 
                "MengeHammer: ";
                echo 
                $MengeHammer " Stück zu je: " $Hammer " €";
                }
                ?>
                // bringt zur Speicherung auch nix

                <?if (isset($SummeRohrzange)) {
                echo $SummeRohrzange;
                }
                ?>
                Zuletzt geändert von danmon; 02.04.2004, 02:44.

                Kommentar


                • #9
                  aber so langsam scheine ich drauf zu kommen;

                  1.)Frameeingangsseite bereits mit session_id(); aufrufen und auf einzelne frameseiten übergeben.
                  2.) $_Session['name']=$name bzw. $_POST['name'] nutzen
                  3). und Ständig die Übergabe mittels hidden realisieren.

                  Wie heisst es so schön? (auf mich bezogen);
                  Denken ist Luxus: man muss sich nur Luxus gönnen wollen....

                  Ich werde mal weiter die scripte schreiben. wenn ich die lösung habe, setze ic sie mit rein. sollte jemand ein schwerwiegendes problem und ein lösung dazu haben, bin ich für eine info an begriffen und URL's sehr dankbar.

                  Schönen Gruß
                  Zuletzt geändert von danmon; 31.03.2004, 20:45.

                  Kommentar


                  • #10
                    puh. so langsam kommt Licht ins Wirrwarr (.aps Vergleich und eure Hilfe sei dank)

                    ich glaube, ich habe es so langsam. ich habe mich mit session_register(); und session_start(); total verrant.
                    die lösung wurde hier schon angesprochen: ich war eben nur der sehende mit einer augenbinde. sorry.

                    jetzt klappt meine vorstellung zu ca. 60%

                    ein frameseite registriert lediglich, der andere frame ruft über ausgabe session_start die daten ab.
                    in dem abrufframe einfach mit (wie wohl auch hier schon gesagt)
                    $_SESSION['name'] arbeiten. schon ist es da. UND: Es werden die Daten beibehalten!!!! das war das Wichtigste für mich.

                    zumindest funktioniert es recht gut. bin mit dem script noch nicht fertig, da ich noch ne "menge" einzelprobleme habe, aber sobald es fertig ist, stelle ich es zur "ansicht" , "kritik" , "verbesserung" rein.

                    (wer meint, ich sei ein depp, da es doch einfach ist: ich nehme mir das zur zeit gerne an. aber in einem monat sprechen wir uns wieder. da weis ich dann schon mehr . )

                    servus daniel
                    Zuletzt geändert von danmon; 31.03.2004, 23:03.

                    Kommentar


                    • #11
                      brauche weiter EURE Hilfe!!!

                      Heraus genommen, da ich einen Fehler gemacht habe. Der Beitrag ist jetzt 2 Tabellen weiter unten zu finden.
                      Zuletzt geändert von danmon; 02.04.2004, 02:48.

                      Kommentar


                      • #12
                        wo ist der REST?

                        Wo ist der rest des Scriptes geblieben???????

                        Kommentar


                        • #13
                          und noch einmal das skript.

                          da habe ich wohl irgendwo msit gebaut. und die funktion ausbessern getht auch nicht mehr... schrecklich. also!!!


                          NOCH EINMAL:

                          Also, ich habe das Script komplett überarbeitet und noch einige Dinge so eingeführt.
                          Was mich jetzt noch nervt ist diese Meldung. Jetzt verstehe ich überhaupt nicht mehr, wieso die jetzt noch da ist. wohl doch noch die session_register. aber wie ich das skript iohne schreiben soll, entbehrt mir noch die Logik, ohne dass eine Fehlermeldung kommt, das POST..... eine globale Variable sei....):
                          Woher kommt das?:::

                          Warning: Unknown(): Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0


                          Also mein skript funktioniert mit einem kleinen Trick (ausgeben lasse ich als Summe vorest über eine normale Variable und die gesicherte Variable soll im Hintergrud mitlaufen. Die SESSION-Summe kann dann ganz normal in weitere Berechnungen mitgeführt werden...

                          Hier das Skript: (ich bastel an verbesserungen weiter!!!!!!!! und bin für jeden rat sehr dankbar!!!!!!!!!!!)


                          für jede Verbesserung bin ich offen!!!


                          Frameeingan index.php
                          ________________________
                          EDIT:
                          <? session_start();
                          ?>
                          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
                          <html>
                          <head>
                          <title>Frameset</title>
                          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
                          </head>

                          <frameset cols="300,*" frameborder="YES" border="1" framespacing="0">
                          <frame src="links.php?<?=SID?>" name="leftFrame" scrolling="NO" noresize>
                          <frame src="rechts.php?<?=SID?>" name="rightFrame">
                          </frameset>
                          <noframes><body>
                          </body></noframes>
                          </html>




                          __________________________________
                          links.php
                          __________________________________

                          PHP-Code:
                          <?
                          session_start();
                          ?>
                          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
                          <html>
                          <head>
                          <title>LEftframe</title>
                          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
                          </head>

                          <body>


                          <form name="form1" method="post" action="rechts.php?<?=SID?>" target="rightFrame">
                          <input name="MengeRohrzange" type="text"> <br>
                          <input type="submit" name="Rohrzange1" value="senden">
                          </form>

                          </body><html>

                          _________________________________________
                          rechts.php
                          _____________________

                          PHP-Code:
                          <?
                          session_start();
                          ?>

                          <?php



                          // Rohrzange



                          $_SESSION['MengeRohrzange'] = isset($_POST['MengeRohrzange'])?$_POST['MengeRohrzange']:'';
                          if(
                          $_SESSION['MengeRohrzange']>0) {

                          session_register("SummeRohrzange");
                          $SummeRohrzange=20*$_SESSION['MengeRohrzange'];


                          echo 
                          "Gesamtsumme: ";
                          echo 
                          $SummeRohrzange;
                          echo 
                          "<br>";
                          echo 
                          "gesicherte datei";
                          echo 
                          $_SESSION['SummeRohrzange'];
                          echo 
                          "<br>";
                          echo 
                          "Einzelsumme: ";
                          echo 
                          $_SESSION['MengeRohrzange'];
                          if (
                          $SummeRohrzange>$_SESSION['SummeRohrzange']) {
                               
                          session_unregister("SummeRohrzange");
                               }
                               if   (!
                          $_SESSION['SummeRohrzange']) {
                                  
                          session_register("SummeRohrzange");
                                     
                          $SummeRohrzange=20*$_SESSION['MengeRohrzange'];
                               }

                          if (
                          $SummeRohrzange<$_SESSION['SummeRohrzange']) {
                               
                          session_unregister("SummeRohrzange");
                               }
                               if   (!
                          $_SESSION['SummeRohrzange']) {
                                  
                          session_register("SummeRohrzange");
                                     
                          $SummeRohrzange=20*$_SESSION['MengeRohrzange'];
                               }

                          }

                          ?>

                          cia Daniel
                          (Übrigens: Das Script habe ich nicht kopiert, sondern mit Hilfe der Fachlyrik meiner Bücher und des Nets geschrieben.....Und für einen ANfänger ist das nicht schlecht!)
                          Zuletzt geändert von danmon; 02.04.2004, 03:10.

                          Kommentar


                          • #14
                            mist. &lt;Trinitäts-Operator ?: &gt;also noch meine nächste Frage für die Cracks hier

                            wieso geht in dem Script der Trinitäts-Operator - ?: - nicht?
                            Gemeint ist damit, dass ich bereits von links.php auf rechts.php eine Übertragung der Variablen $SummeRohrzange hinbekomme, so dass ich sie sie auf rechts.php auswerten lasse, ausschreiben lasse (echo) und damit weiterarbeitn kann. ähnlich dem Text feieingebbaren Text aus links.php.
                            Ich habe es ausprobiert und kam nicht daruf. Bei mir klappt es nicht!

                            es ist doch lediglich antwort1 ? antwort2 : antwort 3
                            ->oder? ich werd noch.....

                            Für diese Antwort liege ich dem Beantworter zu Füßen!!!!

                            Schönen Gruß
                            Daniel
                            Zuletzt geändert von danmon; 02.04.2004, 03:00.

                            Kommentar


                            • #15
                              ???

                              so langsam gewinne ich den eindruck, dass über dieses thema hier auch keiner genau was weis und des halb keine antworten kommen.....
                              allerdings würde das passen. ich habe im internet nirgendwo die Lösung meines problems gefunden. auch immer nur anfragen, ohne dass etwas dabei rumkam.

                              also noch einmal. wenn jemand einen tip hat: der könnte für die Net-Community ind Zukunft wirklich Abhife schaffen und wäre die gefragte person hier....

                              Daniel

                              Kommentar

                              Lädt...
                              X