Re: Verknüpfen von Eingaben? - Mittels Javascript machbar - 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 Dienstag, 10.Februar.2004, 17:40.
    Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      Ganz vergessen...

      geht das nicht auch mit 'nem perl-schnipsel? Ich kann doch mit "." Zeichenketten verknüpfen:

      $Feld1="123";
      $Feld2="xyz";
      $Feld3=$Feld1.$Feld2;
      


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Andreas (396 Beiträge) am Dienstag, 10.Februar.2004, 16:24.
    Verknüpfen von Eingaben?

      Ist es über ein Formular möglich, die Eingaben aus zwei Feldern (<input type="text" name="Eingabe1"><input type="text" name="Eingabe2">) in einem versteckten Feld (Feld3; type="hidden") zu verknüpfen und ebenfalls in der Datenbank zuspeichern?

      Beispiel:
      Eingabe1 ist z.B. "1234"
      Eingabe2 z.B. "xyz"
      und Feld3 soll dann "1234xyz" sein

     Antworten

    Beitrag von Sascha Fitzner (476 Beiträge) am Dienstag, 10.Februar.2004, 16:44. WWW: planet-gaga.de
    Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      Hallo Andreas,

      ich denke den Weg beschreitest Du am einfachsten mittels Javascript.

      Ich habe hier mal was angedeutet, habe es aber nicht getestet von der Syntax her.

      Im Head Deiner Seite fügst Du Javascript ein.

      In Deiner Form rufst Du dann beim klicken auf den entsprechenden Button die Javascript-Funktion auf. Diese Verknüpft dann in das Hiddenfeld "feldname3" die Inhalte aus "feldname1" und "feldname2".

      Gruss

      Sascha Fitzner

      <html>
      <head>
      <script language="JavaScript1.1"><!--
      function ueberpruefeformular(form)
      {
      if (document.forms["formname"]["feldname1"].value=="")
      {
          alert ("Bitte Wert in Feld 1 eingeben.");
          return false;
      }
      if (document.forms["formname"]["feldname2"].value=="")
      {
          alert ("Bitte Wert in Feld 2 eingeben.");
          return false;
      }
      document.forms["formname"]["feldname3"].value=document.forms["formname"]["feldname1"].value+document.forms["formname"]["feldname2"].value;
      return true;
      }
      // stop hiding --></script>
      </head>
      

      <body>
      <form method="post" action="http://www.xyz.de/cgi-bin/baseportal.pl?htx=/neueseite" enctype="multipart/form-data" onsubmit="return ueberpruefeformular(this);" target="speichern" name="formname">
      <input type="text" name="feldname1" size="15">
      <input type="text" name="feldname2" size="15">
      <input type="hidden" name="feldname3">
      <input type="submit" value="Loslegen" name="Button1">
      </form>
      </body>
      </html>
      

     Antworten

    Beitrag von Andreas (396 Beiträge) am Dienstag, 10.Februar.2004, 17:01.
    Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      Danke, werde das mal ausprobieren. Wobei dann natürlich Javafähigkeit beim Browser vorausgesetzt werden muß...

     Antworten

    Beitrag von Andreas (396 Beiträge) am Dienstag, 10.Februar.2004, 17:40.
    Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      Ganz vergessen...

      geht das nicht auch mit 'nem perl-schnipsel? Ich kann doch mit "." Zeichenketten verknüpfen:

      $Feld1="123";
      $Feld2="xyz";
      $Feld3=$Feld1.$Feld2;
      

     Antworten

    Beitrag von hempelr (1976 Beiträge) am Dienstag, 10.Februar.2004, 20:57.
    Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      das geht es geht aber auch so: $Feld3 = "$Feld1$Feld2"; - solche Scalarmanipulationen sind doch gerade die Stärken von Perl.....
      Ruben

     Antworten

    Beitrag von Andreas (396 Beiträge) am Mittwoch, 11.Februar.2004, 07:32.
    Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      wie krieg ich das dann aber hin, daß der Inhalt des Feldes (Feld3) auch zusammen mit den normal über das Formular eingegebenen Daten in der Datenbank im gleichen Datensatz abgelegt wird?
      Habe vor der Formularausgabe festgelegt:

      $Feld3=$Feld1.$Feld2 
      (oder eben "$Feld1$Feld2") 
      

      und dann im Formular als hidden-Eingabe übergeben:

      <input type=hidden name="Feldname=" value="$Feld3">
      

      Das entsprechende Feld in der Datenbank (Feldname) bleibt jedoch leer - die im Formular eingegebenen Daten werden aber gespeichert.

      Wenn ich jedoch den Inhalt von Feld3 mit put speichere:

      put ["Feldname", "$Feld3"], "Datenbankname";
      

      werden zwar die Daten aus Feld3 gespeichert, jedoch nicht im selben Datensatz wie die über das Formular eingegebenen Daten.

      Was kann ich machen?

     Antworten

    Beitrag von hempelr (1976 Beiträge) am Mittwoch, 11.Februar.2004, 07:54.
    Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      auch einfache Sache (wenn mans weiss! ;-):

      Wie machst du denn die Formulare, eigene Forms oder Baseportal-Interne (do bzw. do_all)?
      Mal für den zweiten Fall:
      <perl>
      if ($_p{(Feld3} = "$Feld1$Feld2";
      }
      </perl>
      
      und schwuppdiwupp wirds im aktuell-neuen atensatz mit abgespeichert
      HtH
      Ruben

     Antworten

    Beitrag von Andreas (396 Beiträge) am Mittwoch, 11.Februar.2004, 09:03.
    Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      Formular wurde einfach in Anlehnung an das Beispiel in der Dokumentation erstellt.

      Also Daten werden an ein 2. Template gesandt und hier mit

      <do action=input>
      

      in der Datenbank gespeichert.

      Werde deinen Vorschlag ausprobieren (leider erst etwas später).
      Bis hierhin trotzdem erstmal DANKE.

      Andreas

     Antworten

    Beitrag von hempelr (1976 Beiträge) am Mittwoch, 11.Februar.2004, 07:56.
    Korrektur - Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      sorry - hatte versehentlich was gelöscht - so isses richtig:

      <perl>
      if (%_put){
      $_put{Feld3} = "$Feld1$Feld2";
      }
      </perl>
      

     Antworten

    Beitrag von Andreas (396 Beiträge) am Mittwoch, 11.Februar.2004, 09:33.
    Re: Korrektur - Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      Habe das doch schnell ausprobiert und es klappt :-)

      Der Code steht im Template, durch das die Daten in die DB gespeichert werden. Also:

      <perl>
      if (%_put){
      $_put{Feld3} = "$Feld1$Feld2";
      }
      </perl>
      <do acrion=input>
      

      Als Perl-Anfänger ist mir die Syntax aber immernoch etwas schleierhaft. Kannst Du mir den Perlcode eventuell mal "übersetzen"?

      Auf jeden Fall großes Dankeschön!

      Andreas

     Antworten

    Beitrag von hempelr (1976 Beiträge) am Samstag, 14.Februar.2004, 15:04.
    Re: Korrektur - Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      so - da ich heut meinen Erklär-Tag habe, hier die Erklärung:

      if (%_put){ # wenn der Hash %_put definiert ist
      

       %_put ist ein baseportal-Systemhash, der nach Übergabe von Feldern mit der Namenskonvention <input ... name="feldname:=" ..> im Script (oder halt Template) bereitsteht und die Key-Value-Paare Feldname - Feldwert enthält.
      Gleichzeitig bedeutet es, wenn der put-hash vorhanden ist, dass eine Datenbankaktion (speichern oder ändern) angesagt ist (das regeln dann die baseportal-internen "befehle" bzw. tags do bzw. do_all sowie der Inhalt des Parameters cmd)

      $_put{Feld3} = "$Feld1$Feld2"; # den Wert des Key/Wertpaares mit dem Key feld3 im put-hash mit der Verkettung der übergebenen Feldinhalte aus Feld1 und Feld1 belegen
      

      Alle HTML-Felder, die entweder mittels feldname:= oder feldname= an das Script übergeben werden, stehen auch direkt über den zugehörigen Variablennamen zur Verfügung (das ist übrigens eine der vielen gnialen Sachen in baseportal - mittels "richtiger" CGI-Programmierung müsste man sich da ganz schön einen Wurm abdrehen...)
      Wenn mittels feldname:= übergeben wurde, stehts dann im put-Hash, wenns mit feldname= übergeben wurde stehts im get-Hash - man kann dann allerhand Manipulationen an diesen durchführen

      So - hoffe dass es dir weiterhilft (ich kenn das - wenn man nicht weiss was etwas zu bedeuten hat - hab auch oft im Forum dazu gelöchert - gebs gerne wieder zurück) - Mal ein Dank an alle (ehemals) aktiven Forumshelfer wie bspw. Sander, FB, Claus S., H. Fehde, Pourage und nicht zu vergessen Christoph.
      CU
      Ruben

     Antworten

    Beitrag von Andreas (396 Beiträge) am Samstag, 14.Februar.2004, 20:12.
    Re: Korrektur - Re: Verknüpfen von Eingaben? - Mittels Javascript machbar

      Danke schön,

      langsam lichtet sich der Nebel ;-)

      Bis zum nächsten Problemchen.
      Andreas

     Antworten


     
 Liste der Einträge von 31950 bis 32100: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.11s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!