Re: Re: Re: Re: Re: Datenübergabe mit $_Session in kolo-bp - baseportal Forum - Web-Anwendungen einfach, schnell, leistungsfähig!
baseportal
English - Deutsch "Es gibt keine dummen Fragen - jeder hat einmal angefangen"

 baseportal-ForumDie aktuellsten 10, 30, 50, 100 Einträge anzeigen.  

 
 Ausgewählter Eintrag: Zur Liste 
    Beitrag von Rainer (49 Beiträge) am Freitag, 9.Mai.2008, 12:28.
    Re: Re: Re: Re: Re: Datenübergabe mit $_Session in kolo-bp

      @ Claus,
      

      erstmal: Super Danke - Dein Tipp hat zur Lösung geführt. Die Übergabe des Parameters hat ja geklappt (wie beschrieben) - nur blieb mir der Wert nicht erhalten. Mit Einfügen von "$sid=$_session" klappt nun alles wie gewünscht und ich kann von A die Seite B aufrufen und dort wird in Bezug auf den aktuellen Datensatz bei A ein Datensatz in B angelegt. Perfekt!


      @ richard,
      

      Danke für den erneuten Versuch. Scheinbar habe ich es nicht geschafft, Dir den Fall klar darzulegen. Verzeih auch, dass ich offensichtlich Deine Gefühle verletzt habe. Aber wenn Du mir Brocken unterjubelst, solltest Du nicht aus allzu weichem Holz geschnitzt sein. Der Ton hier im Forum ist aber leider oft unter der Gürtellinie. Diesem Niveau möchte ich mich jedoch nicht anschliessen. Und Dich nicht ernst nehmen ist für mich eine heftige Unterstellung - ich nehme jeden ernst!!


      @ Claus und richard,
      

      bitte vergesst bei Euren Hinweisen auf vollständige Angaben und mehr Infos nicht, dass alles subjektiv zu betrachten ist.
      Nach meiner Subjektivität habe ich alles Wichtige zur Verfügung gestellt.

      Daher meine Meinung, mein Eindruck (der vielleicht nicht Eurer Wahrheit entspricht):
      - Claus, Du hast Dich auf meine Fragen konzentriert und Deine Hilfe war wieder einmal effektiv. Auch wenn Du überlesen hast, dass die Übergabe schon funktionierte... Vielen Dank!
      - richard, Du wolltest mir unbedingt die Relation "verkaufen". Aber aufgrund dessen dass von B der Bezug schwierig mit einem Feld in A (1 Firma, mehrere Projekte) zu verbinden ist und ich von A aus den Aufruf mit dem aktuellen Projektdatensatz gestalten wollte (benutzerfreundlich) musste ich die aktuelle Datensatz-Id irgendwie von A nach B übergeben.
      Klar kann ich z.B. die Id als Relation nutzen (Deine Beschreibung hat mir hier geholfen das zu testen), aber ich sehe dann als Benutzer noch nicht, ob ich das richtige Projekt erwischt habe. Denn die Id hat der Benutzer nicht im Kopf - wohl aber Firmenname und Projektbezeichnung... Danke für Dein Engagement.


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Rainer (49 Beiträge) am Dienstag, 6.Mai.2008, 23:00.
    Datenübergabe mit $_Session in kolo-bp

      Hallo,

      ich bräuchte mal wieder Unterstützung.

      Irgendwie klappt das bei mir nicht. Und die Beispiele in der Doku sind für mich nicht richig nachvollziehbar.

      Daher mein Hilferuf:

      Die Aufgabe:
      Datenbank A:
        Projekte mit Umsatzvolumen, etc.
      
      Datenbank B:
        Auftragseingang-Datum und -EUR-Betrag
        und ein Feld, das auf das zugehörige Projekt aus A verweist
      
      (Auf einer sep. Seite möchte ich dann die Daten aus A + B zusammenführen und ausgeben)

      Lösungssuche:
      Wie weise ich in der A-Seite einer Sessionvariablen (z.B. AktuellesProjekt_Id) den gewünschten Wert zu? $_session{AktuellesProjekt_Id}=$Id; ??
      Wie gestalte ich die Übergabe per URL?
      ...und wie lese ich den Parameter auf der B-Seite wieder aus?


      Da ich auf der B-Seite mehrere Daten nacheinander eingeben möchte, soll die übergebene Id solange gültig sein, bis die Seite geschlossen wird.

      Meine Versuche mit der Übergabe (ohne $_session) führten dazu, dass die Übergabe zwar klappt, aber sobald ich "Ändern" aufrufe, verliere ich den Wert der Variablen.
      Somit kann ich die Projekt-Id nicht mehr in die B-Datenbank schreiben.


      Bin für Hilfe sehr dankbar.

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 6.Mai.2008, 23:22.
    Re: Datenübergabe mit $_Session in kolo-bp

      du packst alles in %_session rein:
      $_session{AktuellesProjekt_Id}=$Id;
      $_session{anderevar}=$anderevar;
      
      usw...

      im link bzw im form übergibst du sid=$_session bzw <input type=hidden name="sid=" value="$sid">

      auf der nächsten seite kannst du auf die Vars wieder mit $_session{...} zugreifen

     Antworten

    Beitrag von Rainer (49 Beiträge) am Donnerstag, 8.Mai.2008, 08:07.
    Re: Re: Datenübergabe mit $_Session in kolo-bp

      Hallo Sander,

      ja so habe ich mir das auch gedacht...

      Aber es klappt nicht.

      Hier mein Code in der Zielseite (Datenbank B):
      --------------------------------
      <html><head></head><body>
      

      <do db=AE_Termine action=all range^=0,0 searchfields=AE_Monat listfields=AE_EUR,AE_Monat,Anmerkung,Projekt_Id allfields=AE_EUR,Projekt_Id,AE_Monat,Anmerkung formfields=AE_EUR,AE_Monat,Anmerkung showamount=all,sel selectbrowse=top buttonbrowse=top pagebrowse=top indexbrowse=top listtype=list language=de detail=link search=no input=top>


      <perl>
      out "<br>In Perl die Projekt_ID: $_session{AktuellesProjekt_Id}<br>";
      </perl>
      

      </body></html>
      --------------------------------

      Nach Aufruf der Seite wird die Projekt_ID korrekt angezeigt. Aber sobald ich einen Datensatz neu anlege ist diese verschwunden! -> Also flüchtig. Wenn ich das mit den Sessions richtig verstanden habe, sollten die session-Variablen doch permanent verfügbar sein, oder?

      Gruß Rainer

      P.S. Die eigentliche Funktion, die ich auf der Seite nutze, habe ich zu Testzwecken raus genommen. Dort schreibe ich nämlich in den zuletzt eingefügten Datensatz die Projekt_Id hinein. Was aber nicht funktioniert, da die Variable dann leer ist:

      if ($cmd eq "add")
      {
      mod "Projekt_Id==_", ["Projekt_Id", $_session{AktuellesProjekt_Id}], "AE_Termine"; 
      }
      

     Antworten

    Beitrag von richard (1187 Beiträge) am Freitag, 9.Mai.2008, 08:26. WWW: posaunenchor-rhoden.de
    Re: Re: Datenübergabe mit $_Session in kolo-bp

      Grundsätzlich muß die Session (und zwar dieselbe) auch jedesmal initialisiert werden.Haben beide Datenbanken eine Nutzerdatenbank - verschiedene oder dieselbe?Was heißt die Variable wird korrekt angezeigt und ist dann leer? Ist doch dieselbe wie bei der Anzeige - oder?Wie wäre es denn, daß Feld mit dem Verweis in B ausdrücklich alsRelationsfeld anzulegen?Du könntest dann die Daten von B aus mit Unterstützung durch das System eintragen - ohne irgendwelche Sessionvariablen.Btw: Die Darstellung deines Projektes ist scheinbar ziemlich unvollständig und ist auch kaum nachzuvollziehen, was sinnvolle Hinweise schwer macht. Die paar Brocken die Du da hinwirfst stellen nur Deine aktuelle Sicht desProblems dar - die funktioniert aber nicht.

     Antworten

    Beitrag von Rainer (49 Beiträge) am Freitag, 9.Mai.2008, 09:17.
    Re: Re: Re: Datenübergabe mit $_Session in kolo-bp

      @ richard,
      

      löblich ist Dein Versuch mir zu helfen, aber ich kann nicht nachvollziehen, was Du schreibt:

      1. Der Code den ich angab, ist der vollständige Code der Datenbank-Seite B!
      Wenn Du nicht nachvollziehen kannst, was der mod-Befehl macht: Das ist vorerst nicht wichtig. Meine Testausgabe des übergebenen Parameters klappt ja schon nicht - hier benötige ich Unterstützung, den Rest krieg ich dann schon hin.
      2. Die Datenbank B ist eine eigenständige Datenbank mit den Auftragseingangsdaten für alle Projekte, die in DB A erfasst wurden - die vorhandenen Felder sind in der <do-Anweisung zu sehen.
      3. Der Aufruf der Datenbank-B-Seite erfolgt von der Datenbank-A-Seite aus.
      4. Als Verbindung übergebe ich über $_session einen Parameter, der später bei den noch folgenden Auswertungen einen Bezug zum Projekt zulässt.
      5. Diesen Parameter habe ich testweise anzeigen lassen. Beim ersten Aufruf der Seite wird dieser auch korrekt angezeigt.
      6. Sobald ich jedoch "Ändern" oder "Neu" benutze (also Daten in der Eingabemaske eingeben möchte), wird der Parameter nicht mehr angezeigt - geht also verloren.
      7. Nutzerdatenbank gibts derzeit nur bei Datenbank A (das ist die Hauptdatenbank)

      Daraus resultieren die Fragen:
      A) Was mache ich bei der Nutzung der session-Variablen falsch - und wie mache ich es richtig?
      B) Oder funktioniert das mit den session-variablen in der kostenfreien bp-Version nicht?
      C) Wenn eine Relation das gleiche besser erfüllen kann: Wie gehe ich genau vor? denn die Doku konnte mir hierbei nicht richtig helfen. Gibts ein passendes Beispiel?

      Vielleicht noch wichtig fürs Verständnis: Die Datenbank B wird erst ab einem bestimmten Projektstand genutzt. Ab einer Projektwahrscheinlichkeit von 60% sollen die voraussichtlichen Umsätze mit Auftragseingangsdatum und Auftragssumme erfasst werden. Bei einem Rahmenauftrag kann sich die gesammte Projektsumme auf mehrere einzelne Abrufe verteilen, so dass ich zu einem Projekt beispielsweise 12 Datensätze in DB B erfassen muss.

      Und richard, verzeih, ich werfe niemandem ein paar Brocken hin, sondern ich gebe hier nach bestem Wissen und Gewissen alle Informationen bekannt, die mir relevant erscheinen. Dass das vielleicht für den Einen oder Anderen zu wenig ist, kann und darf sein - ein Anderer kann mit meinen Angaben vielleicht klarkommen... für Dich war es offensichtlich zu wenig an Hintergrundinfo. Ich hoffe ich konnte das ausbügeln.

     Antworten

    Beitrag von richard (1187 Beiträge) am Freitag, 9.Mai.2008, 10:54. WWW: posaunenchor-rhoden.de
    Re: Re: Re: Re: Datenübergabe mit $_Session in kolo-bp

      Auch wenn Du mich scheinbar nicht ganz ernst nimmst und Deine Probleme selber genau kennst, abschließend noch einmal folgendes:


       3. Der Aufruf der Datenbank-B-Seite erfolgt von der Datenbank-A-Seite aus.
      

      Die vollständige URL würde in jedem Fall interessieren.


       6. Sobald ich jedoch "Ändern" oder "Neu" benutze (also Daten in der Eingabemaske eingeben möchte), wird der Parameter nicht mehr angezeigt - geht also verloren.
      

      Du arbeitest nun mit der Datenbank B. Warum sollte bp jetzt eine Session (aus Datenbank A) kennen und eventuelle Inhalte daraus zur Verfügung stellen?

       7. Nutzerdatenbank gibts derzeit nur bei Datenbank A (das ist die Hauptdatenbank)
      

      Verbinde Datenbank B mit derselben Nutzerdatenbank.


       C) Wenn eine Relation das gleiche besser erfüllen kann: Wie gehe ich genau vor? denn die Doku konnte mir hierbei nicht richtig helfen. Gibts ein passendes Beispiel?
      

      Soweit erkennbar, handelt es sich bei Deinem Vorhaben um den klassischen Fall einer 1:n Beziehung verknüpfter Daten. Von der Sache her machst Du ja auch genau das mit der Projekt_Id.

      Das Feld mit der Projekt_Id in Datenbank B kann innerhalb der Datenbankdefinition von bp als Relation definiert werden. Als Datenbank mußt Du dann A angeben, als Schlüsselfeld (grundsätzlich beliebig) dasjenige, dessen Inhalt in den Formularen der Datenbank angezeigt werden soll (den Datensatz aus A am sinnvollsten identifiziert). bp wird dann die Verknüpfung über die Id des Datensatzes herstellen und den Inhalt des bei Schlüsselfeld angegebenen Feldes darstellen.

      Daneben kann dann von B aus auf alle Felder des verknüpften Datensatzes von A zugegriffen werden (allerdings nicht mit den automatisch erstellten Formularen).


      Wie das geht steht in der Doku. In der gibt es auch das eine oder andere Beispiel zu Relationen. Wenn ich es richtig in Erinnerung habe unter anderem im Abschnitt über get_next.

     Antworten

    Beitrag von Claus (4645 Beiträge) am Freitag, 9.Mai.2008, 11:58.
    Re: Re: Re: Re: Datenübergabe mit $_Session in kolo-bp

      Im Prinzip musst du Dich nur von "<do all>" lösen und z.B. "do all"
      benutzen. siehe dazu Doku:

      http://doku.baseportal.de/53.html

      Also nach der Übergabe der "session" von Template "A" im Template mit der Datenbank "B" dann z.B. entsprechend übergeben:

      do_all "db=B weitere Paramameter", "sid=$_session";
      

      Wie kommt eigentlich die "session" in den Link? Musst Du doch imho erstmal an den Link richtig übergeben, damit bei dem Template für Datenbank "B" auch was ankommt. Wenn Du bei db "A" mehrere Datensätze hast, musst Du doch erstmal den entsprechenden, zu übergebenden Teil(sprich Wert) holen...

      Wie Richard schon geschrieben hat, etwas mehr Info ist schon hilfreich, siehe:

      http://baseportal.de/forumfaq.html#13

      hth

      Gruesse

      Claus

     Antworten

    Beitrag von Rainer (49 Beiträge) am Freitag, 9.Mai.2008, 12:28.
    Re: Re: Re: Re: Re: Datenübergabe mit $_Session in kolo-bp

      @ Claus,
      

      erstmal: Super Danke - Dein Tipp hat zur Lösung geführt. Die Übergabe des Parameters hat ja geklappt (wie beschrieben) - nur blieb mir der Wert nicht erhalten. Mit Einfügen von "$sid=$_session" klappt nun alles wie gewünscht und ich kann von A die Seite B aufrufen und dort wird in Bezug auf den aktuellen Datensatz bei A ein Datensatz in B angelegt. Perfekt!


      @ richard,
      

      Danke für den erneuten Versuch. Scheinbar habe ich es nicht geschafft, Dir den Fall klar darzulegen. Verzeih auch, dass ich offensichtlich Deine Gefühle verletzt habe. Aber wenn Du mir Brocken unterjubelst, solltest Du nicht aus allzu weichem Holz geschnitzt sein. Der Ton hier im Forum ist aber leider oft unter der Gürtellinie. Diesem Niveau möchte ich mich jedoch nicht anschliessen. Und Dich nicht ernst nehmen ist für mich eine heftige Unterstellung - ich nehme jeden ernst!!


      @ Claus und richard,
      

      bitte vergesst bei Euren Hinweisen auf vollständige Angaben und mehr Infos nicht, dass alles subjektiv zu betrachten ist.
      Nach meiner Subjektivität habe ich alles Wichtige zur Verfügung gestellt.

      Daher meine Meinung, mein Eindruck (der vielleicht nicht Eurer Wahrheit entspricht):
      - Claus, Du hast Dich auf meine Fragen konzentriert und Deine Hilfe war wieder einmal effektiv. Auch wenn Du überlesen hast, dass die Übergabe schon funktionierte... Vielen Dank!
      - richard, Du wolltest mir unbedingt die Relation "verkaufen". Aber aufgrund dessen dass von B der Bezug schwierig mit einem Feld in A (1 Firma, mehrere Projekte) zu verbinden ist und ich von A aus den Aufruf mit dem aktuellen Projektdatensatz gestalten wollte (benutzerfreundlich) musste ich die aktuelle Datensatz-Id irgendwie von A nach B übergeben.
      Klar kann ich z.B. die Id als Relation nutzen (Deine Beschreibung hat mir hier geholfen das zu testen), aber ich sehe dann als Benutzer noch nicht, ob ich das richtige Projekt erwischt habe. Denn die Id hat der Benutzer nicht im Kopf - wohl aber Firmenname und Projektbezeichnung... Danke für Dein Engagement.

     Antworten

    Beitrag von Sander (8133 Beiträge) am Freitag, 9.Mai.2008, 12:59.
    Re: Re: Re: Re: Re: Re: Datenübergabe mit $_Session in kolo-bp

      ich muß Richard zustimmen, sobald die db an der gleichen nutzerdb angeschlossen ist, sollte auch die sid innerhalb von do action=all mit übertragen werden.

     Antworten

    Beitrag von Rainer (49 Beiträge) am Freitag, 9.Mai.2008, 13:06.
    Re: Re: Re: Re: Re: Re: Re: Datenübergabe mit $_Session in kolo-bp - erledigt!

      ANFRAGE ist ERLEDIGT - DANKE.


      @ Sander und richard
      

      jetzt hab ich kapiert, dass initialisieren mit dem Eintrag von sid=$_session in <do action...> funktioniert/gemeint ist.

      Claus hats für mich pragmatischer formuliert.

      @ Sander: Wäre der Hinweis in Deinem 1.Beitrag so (<do ... sid=$_session ...) enthalten gewesen, wäre die Sache schon längst erledigt gewesen.
      

      Ich denke, das hängt einfach damit zusammen, weil wir alle auf verschiedenen Levels operieren...

      Danke nochmal an alle für die Unterstützung.

     Antworten

    Beitrag von Sander (8133 Beiträge) am Freitag, 9.Mai.2008, 14:08.
    Re: Re: Re: Re: Re: Re: Re: Re: Datenübergabe mit $_Session in kolo-bp - erledigt!

      da hatte ich das nicht beachtet oder nicht dran gedacht... wie auch immer, sorry ;)

     Antworten

    Beitrag von richard (1187 Beiträge) am Freitag, 9.Mai.2008, 14:30. WWW: posaunenchor-rhoden.de
    Re: Re: Re: Re: Re: Re: Re: Re: Re: Datenübergabe mit $_Session in kolo-bp - erl

       @ Sander: Wäre der Hinweis in Deinem 1.Beitrag so (<do ... sid=$_session ...) enthalten gewesen, wäre die Sache schon längst erledigt gewesen.
      


      Mensch Sander, kauf Dir doch mal ne neue Glaskugel.

     Antworten

    Beitrag von Rainer (49 Beiträge) am Freitag, 9.Mai.2008, 14:52.
    Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Datenübergabe mit $_Session in kolo-bp -

      @ Sander 
      @ richard
      

      Zum Thema Glaskugel:
      Damit hat das absolut nichts zu tun.

      Die erste Info war gut, aber dieses eine Detail hat gefehlt und das war eben auch in der Doku nicht zu finden.

      Auch der Begriff initialisieren ist schön und auch richtig, aber das WIE hat eben gefehlt... ich war der Meinungmit der URL-Übergabe hab ich das gemacht... aber Denken ist eben oft ein Synonym für Nicht-Wissen.

      Vielleicht nehmt Ihr meine Anmerkungen sportlich und betrachtet es als konstruktive Kritik. Denn nicht jeder hat die Terminologie der Befehle stets parat - ich arbeite z.B. nicht ständig mit bp - mein Hauptberuf ist Vertrieb und die Datenbank mache ich nebenher. Und da fällt es mir leichter, wenn ich auf klaren Befehlscode zurück greifen kann.

      Und nun Bitte: Lasst es gut sein. "Nette" Kommentare helfen nun mal leider nicht die Sachlichkeit zu bewahren.

     Antworten

    Beitrag von Sander (8133 Beiträge) am Freitag, 9.Mai.2008, 15:45.
    Re^1256,43: Datenübergabe mit $_Session in kolo-bp -

      Ich glaub, du nimmst das gerade viel zu Ernst.
      sieh das bitte hier nicht als Kritik, sondern als Tipp für dich und andere beim nächsten mal. Das meinte Richard mit fehlenden Infos - im ersten Teil ist ja nirgends zu lesen, das es sich um <do action... handelt.

      Aber schön, das es nun funktioniert ;)

     Antworten

    Beitrag von Claus (4645 Beiträge) am Samstag, 10.Mai.2008, 08:41.
    Re: Re^1256,43: Datenübergabe mit $_Session in kolo-bp -

      Ich dachte eigentlich, das Thema sei durch meine Antwort erledigt, aber als ich gerade eben den PC angeschaltet hatte, sah ich diesen "Bandwurm-Thread".

      Er hatte doch im 1. Beitrag geschrieben:

      >...aber sobald ich "Ändern" aufrufe,
      

      Manchmal muß man auch mal zwischen den Zeilen lesen, da braucht man keine Glaskugel;)

      just my 2 cents

      frohes Pfingstfest

      Gruesse

      Claus

     Antworten

    Beitrag von Sander (8133 Beiträge) am Samstag, 10.Mai.2008, 10:56.
    Re: Re: Re^1256,43: Datenübergabe mit $_Session in kolo-bp -

      jaja, du mußt schwätzen... ;)
      genau dieser satz machte die frage etwas konfus

     Antworten

    Beitrag von Rainer (49 Beiträge) am Freitag, 9.Mai.2008, 14:55.
    Re: Re: Re: Re: Re: Re: Re: Re: Re: Datenübergabe mit $_Session in kolo-bp - erl

      @ Sander
      

      passt ja nun - soweit klappt alles - nun kann ich an die Feinarbeit ran...

      Danke nochmal.

      richard-Glaskugel-Return von mir: Hatte Deinen letzten Beitrag noch nicht gelesen.

     Antworten


     
 Liste der ersten 150 Einträge:Einklappen Zur Eingabe 
 Zur Eingabe  > Ältere Einträge | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >> Älteste Einträge


Zurück zur Homepage

© baseportal.de. Alle Rechte vorbehalten. Nutzungsbedingungen



powered in 0.10s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!