Re: Wie wäre es mit der Übergabe in der URL? - 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 Andreas (396 Beiträge) am Donnerstag, 8.Februar.2001, 08:10.
    Re: Wie wäre es mit der Übergabe in der URL?

      Hallo,

      also in meiner Erinnereung hat Christoph irgendwo geschrieben, daß er die Variablen sowohl in der URL als auch in hidden-fields übergibt, weil sich da die Browser unterschiedlich verhalten und man so auf der sicheren Seite ist.
      Was ich aber nicht verstehe, Ruben, ist, wie Du einen Wert mit $Nr übergeben willst, wenn Du vorher im Template der Variablen überhaupt keinen Wert zugewisen hast. Oder habe ich das übersehen?

      Gruß, Andreas


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Ruben (403 Beiträge) am Mittwoch, 7.Februar.2001, 18:57.
    Krieg die Variable nicht durchgegeben!

      Hab eine Testanwendung gebastelt, Basis Paßwortabfrage für Nutzerdatenbank.
      Im ersten Template http://baseportal.de/cgi-bin/baseportal.pl?htx=/hempelr/test/html_anzeige werden Schlagzeilen ausgegeben, der Link verzweigt zu einem zweiten Template, as dann die Details anzeigt. Dort ist ein Link zum Ändern, darauf wird das dritte Template aufgrufen, das dann die Nutzerabfrage macht.
      Nun das Prob:
      Bei erster richtiger Eingabe von Nutzername und Paßwort funzt es, es wird die ID richtig übergeben und der ausgewählte Datensatz steht zur Änderung bereit ( http://baseportal.de/cgi-bin/baseportal.pl?htx=/hempelr/test/html_mod ). Wenn aber die Eingabe einmal fals ist oder aber weder PW noch Nutzername eingegeben wird und das Form abgeschickt wird, dann "vergißt" das Template die Übergabevariable, komischerweise nur für die ID, die Range haut hin. Alles im do_all als Param angehängt und auch im Namen/PW-Form als hiddden-Field reingebaut.
      Weiß nicht mehr weiter - wer kann mir mal nen Tip geben?
      Ciau
      Ruben

     Antworten

    Beitrag von Andreas (396 Beiträge) am Mittwoch, 7.Februar.2001, 19:18.
    Re: Krieg die Variable nicht durchgegeben!

      Hallo,

      woran es liegt, ist ohne das Template schwer zu sagen, Tatsache ist aber, daß nach einer Falschangabe die ID noch zur Verfügung steht, aber offensichtlich nicht in das hidden-field eingetragen wird (Eintrag beim 1. Anmelden: <input type=hidden name="dsnr=" value="17">, Eintrag nach einem Fehlversuch: <input type=hidden name="dsnr=" value="">. Das scheint eindeutig am Template zu liegen, denn die ID wird ja an anderen Stellen richtig ausgegeben.
      Vielleicht 'mal ein wenig Quellcode?

      Gruß, Andreas

      P.S.: Läuft echt super im Moment, klasse hingebogen!

     Antworten

    Beitrag von Ruben (403 Beiträge) am Mittwoch, 7.Februar.2001, 20:52.
    @Andreas [war: Re: Krieg die Variable nicht durchgegeben!

     Antworten

    Beitrag von Andreas (396 Beiträge) am Mittwoch, 7.Februar.2001, 21:26.
    auf'n kurzen Blick [@Andreas [war: Re: Krieg die Variable nicht durchgegeben!]

      Hallo,

      auf den ersten Blick fällt mir auf, daß im hidden-field <input type=hidden name="dsnr=" value="$nr"> die Variable $nr übergeben wird, die vorher nirgendwo auftaucht (vorher benutzt Du $dsnr).
      Teppfuhler?

      Gruß, Andreas

     Antworten

    Beitrag von Andreas (396 Beiträge) am Mittwoch, 7.Februar.2001, 22:04.
    Re: auf'n kurzen Blick [@Andreas [war: Re: Krieg die Variable nicht durchgegeben!]

      nee, mit ID gings nicht, mit dsnr hatte ich auch kein glück und hab dann gedacht, nimmst mal nen anderen Namen dafür. Also ich übergeb dann die Var $nr an die ID und im aufrufenden Template wird auch nr übergeben.
      Irgendwo "vergißt" das Templ. durch den Aufruf des Anmeldeformulares die Var. Komm bloß nicht dahinter, woran das liegt. Bei Hisory-Back-Button vom Browser bleibt die Var erhalten, ich denk durch das neue Senden und wiederholte Ausgabe der Seite von Perl geht das nicht (möglicherweise geht das überhaupt nicht?!)
      Naja, wenn nicht, laß ich mir was andres einfallen, hab bloß unterdessen etwas Zeitdruck - die Kirchens wollen ne fertige Anwendung und mein Chef auch - echt Schluß mit Lustig.
      Bis die Bytes
      Ruben

     Antworten

    Beitrag von Ruben (403 Beiträge) am Donnerstag, 8.Februar.2001, 09:54.
    Sorry, hatte Anrede in Namensfeld gehackt - Ist meine Antwort oben

      o.w. - zweimal abgeschickt, das erste mal mit "falschem" Namen war in Gedanken sorry!!!

     Antworten

    Beitrag von Ruben (403 Beiträge) am Mittwoch, 7.Februar.2001, 22:06.
    Re: auf'n kurzen Blick [@Andreas [war: Re: Krieg die Variable nicht durchgegeben!]

      nee, mit ID gings nicht, mit dsnr hatte ich auch kein glück und hab dann gedacht, nimmst mal nen anderen Namen dafür. Also ich übergeb dann die Var $nr an die ID und an dsnr und im aufrufenden Template wird auch nr übergeben.
      Irgendwo "vergißt" das Templ. durch den Aufruf des Anmeldeformulares die Var. Komm bloß nicht dahinter, woran das liegt. Bei Hisory-Back-Button vom Browser bleibt die Var erhalten, ich denk durch das neue Senden und wiederholte Ausgabe der Seite von Perl geht das nicht (möglicherweise geht das überhaupt nicht?!)
      Naja, wenn nicht, laß ich mir was andres einfallen, hab bloß unterdessen etwas Zeitdruck - die Kirchens wollen ne fertige Anwendung und mein Chef auch - echt Schluß mit Lustig.
      Bis die Bytes
      Ruben

     Antworten

    Beitrag von gsgs (1 Beitrag) am Mittwoch, 7.Februar.2001, 22:44.
    Re: auf'n kurzen Blick [@Andreas [war: Re: Krieg die Variable nicht durchgegeben!]

      sggsgsg

     Antworten

    Beitrag von Stephan Hix (106 Beiträge) am Donnerstag, 8.Februar.2001, 00:57.
    Wie wäre es mit der Übergabe in der URL?

      Hallo Ruben!

      Ich blicke zwar nicht in allem so durch und hätte jetzt sowas ähnliches wie Andreas gesagt ... aber eine Idee habe ich noch:

      Bei der action-Anweisung des Formulars könntest Du doch in der URL ein &dsnr=$dsnr anhängen (statt mit einem versteckten Feld zu arbeiten). Damit steht die Variable im nächsten aufgerufenen Template zur Verfügung. Und das brauchst Du doch, oder?

      Gruß
      Stephan

     Antworten

    Beitrag von Ruben (403 Beiträge) am Donnerstag, 8.Februar.2001, 07:15.
    Re: Wie wäre es mit der Übergabe in der URL?

      mhm, muß ich mal sehn, wie ich das austeste. Durch das Formular wird ja auch alles in die URL übernommen. Und beim Aufruf des Templates ist die Var auch da (s. Anwendung, hab da "Debugcode" zur Ausgabe des Var-Inhaltes reingehackt)
      Nur vergißt er halt dann, was drin steht, wenn bestimmte Codeteile wieder ausgeführt werden.
      Irgendwo muß die Var wahrscheinlich im Code nochmal zugewiesen werden, nur wo?
      Bin nach Zehn heute wieder da, muß jetzt erst mal ins Büro und versuchen, erste Teilergebnisse zusammenzunageln, damit ich wieder Zeit zum Testen freischaufeln kann.
      Ciau
      Ruben
      Ruben

     Antworten

    Beitrag von Andreas (396 Beiträge) am Donnerstag, 8.Februar.2001, 08:10.
    Re: Wie wäre es mit der Übergabe in der URL?

      Hallo,

      also in meiner Erinnereung hat Christoph irgendwo geschrieben, daß er die Variablen sowohl in der URL als auch in hidden-fields übergibt, weil sich da die Browser unterschiedlich verhalten und man so auf der sicheren Seite ist.
      Was ich aber nicht verstehe, Ruben, ist, wie Du einen Wert mit $Nr übergeben willst, wenn Du vorher im Template der Variablen überhaupt keinen Wert zugewisen hast. Oder habe ich das übersehen?

      Gruß, Andreas

     Antworten

    Beitrag von Ruben (403 Beiträge) am Donnerstag, 8.Februar.2001, 09:48.
    Re: Wie wäre es mit der Übergabe in der URL?

      Hallo,

      hab die beteiligten Templates noch mal überprüft und generell für gleiche Übergabewerte gleiche Var-Namen vergeben. Irgendwo schien da ein "Schwein" gewesen zu sein, jetzt geht es jedenfalls.

      Meine Vermutung ist, daß die Zuweisung var=$_id falsch war, weil die beim ersten Aufruf mit übergeben wird, aber dann nach Fehlanmeldung $_id als bp-interne Var nicht mehr vorhanden ist, weil das aufrufende Template dies ja nicht mehr übergibt.
      Der ähnliche Effekt war da, wenn im Link zu einem anderen Template die Range-Teilwerte nicht noch mal explizit zugewiesen wurden.
      Ich denke, allgemeingültig kann gesagt werden, daß bei Übergabe von Variablen diese sowohl im Template selbst als auch im Link explizit zugewiesen werden sollten -
      Bspw so: <a href=http://baseportal.de/cgi-bin/baseportal.pl?htx=/hempelr/test/html_mod&id=$id&ra=$ra&ra_l=$ra_l>Ändern

      Jedenfalls funzt es, ich speichere den Spaß schnell ab, eh ich weitere Verschlimmbesserungen einbaue.
      Danke für alle eure Tips!

      Ruben

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Donnerstag, 8.Februar.2001, 13:54.
    Re: Wie wäre es mit der Übergabe in der URL? - gute Idee ;-)

      > hab die beteiligten Templates noch mal überprüft und generell
      > für gleiche Übergabewerte gleiche Var-Namen vergeben.
      

      Das ist immer eine gute Idee - denselben Sachen dieselben Namen zu geben ;-)

     Antworten

    Beitrag von Ruben (403 Beiträge) am Donnerstag, 8.Februar.2001, 14:24.
    War witztig? Re: Wie wäre es mit der Übergabe in der URL? - gute Idee ;-)

      mhhhm, hab ich gemerkt :-)
      Jetzt ist das halt für nen Chaoten nicht immer einfach, sich zu merken, welche Vars wie benannt wurden - ach wie schön ist das in ner visuellen Umgebung, du kannst sabbern wie wild und immer findest du wieder das Richtige.... :)
      Nee, war nur Quatsch, ist bei ein paar Variablen und Hilfsvariablen aber trotzdem nicht ganz ohne, den Überblick zu bewahren.

      Aber noch mal zur URL-Übergabe, wie bleibt denn dann eine neue Variable oder auch Abfragekriterium gespeichert? Also meinetwegen als Kriterium landkreis==Annaberg, geb ne Liste aus mittels loop generiert und mit ner eingeschränkten Range und verlinke dadrin auf ne ebenfalls mit loop gebaute Einzelansicht. Beim Rücksprung ist dann die Abfragebedingung wech!! (also wenn ich das bloß einmal in die URL gebe)
      Oder hab ich da wiedermal was nicht kapiert?

     Antworten

    Beitrag von Andreas (396 Beiträge) am Donnerstag, 8.Februar.2001, 14:29.
    Re: War witztig? Re: Wie wäre es mit der Übergabe in der URL? - gute Idee ;-)

      Hallo,

      immer schön bei jedem Link der URL mitgeben (...&var=$inhalt), sonst ist es wech. Haben wir btw letztens ganz ähnlich erst diskutiert (hab' aber gerade keine Lust, über die Forumssuche den Thread aufzuspüren).

      Gruß, Andreas

     Antworten

    Beitrag von Ruben (403 Beiträge) am Freitag, 9.Februar.2001, 21:26.
    Re: War witztig? Re: Wie wäre es mit der Übergabe in der URL? - gute Idee ;-)

      Ok, Ok, ich nerv jetzt nicht mehr.
      Hab zwar mit dem "richtigen Leben" Sorgen, da ich jetzt zwei Filterkriterien übergeben muß an zwei verschiedene loop-Abschnitte - aber ich halt mich dran:
      Für gleiche Sachen gleiche Namen
      In jedem Link schön jede Var zuweisen und übergeben.

      Wenns funzt, geb ich Bescheid, ich geh jetzt in die Enklave!
      Nochmals Danke und sucht mich erst wieder, wenn der neue Papst feststeht *grins bis zu den Ohren!*

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Freitag, 9.Februar.2001, 22:01.
    Re: War witztig? Re: Wie wäre es mit der Übergabe in der URL? - gute Idee ;-)

      Für mich wars schon witzig ;-)

      Aber im Ernst: Für das womit Du Dich rumschlägst gibts keine so richtig schöne Lösung: Man kann ja nicht prinzipiell davon ausgehen, dass man immer alles übergeben will - manchmal will man nur dieses und jenes oder manche Sachen ändern sich etc. - das _ist_ eine blöde Sache, die halt so is ;-(

     Antworten


     
 Liste der Einträge von 65100 bis 65250:Einklappen Zur Eingabe 
Neueste Einträge << 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | Neuere Einträge < 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.13s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!