Wie kann man ein Eingabeformular erstellen? - 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 Horst (39 Beiträge) am Samstag, 2.Oktober.2010, 21:30.
    Wie kann man ein Eingabeformular erstellen?

      Es ist ja schön, dass die ganzen schweren Sachen hier erklärt werden, aber ich bin bisher noch immer daran gescheitert, dass ich kein vernünftiges Eingabeformular bekomme.
      Über die Einstellungsseite kann ich meine Felder zwar untereinander sortieren lassen, aber da fehlt eine logische Anordnung in Spalten, wenn ich do action all aufrufe

      Das kann man wohl über eine <table> hinbekommen, ich habe sogar so ein Formular zurechtgebastelt durch Raubkopien, aber es trägt nichts in die DB ein.

      Mir fehlt wie ich die Datenbank entsprechend anspreche, und wie ich die Daten dann eintrage.

      Ein weiteres Problem ist dabei, dass ich auch noch Radiobuttons dabei habe.

      Zum Schluss, ja, ich habe die Dokumentation durchgestöbert und auch die Easy-Tour versucht, doch die gibt falsche Anweisungen und spätestens bei der Rechtevergabe stimmt sie überhaupt nicht mehr.

      Kann nicht mal jemand eine ganz einfache Anfänger DB in die Bibliothek stellen, mit allen Feldtypen, die dann in einer Tabelle ausgegeben werden und über ein Formular eingelesen werden können. Ohne sonstige Formatierung und ähnliches.


    Ihre Antwort:

    Name: EMail: EMail bei Antwort? WWW:
    Titel:
    Text:

    Neuer Eintrag


 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Horst (39 Beiträge) am Samstag, 2.Oktober.2010, 21:30.
    Wie kann man ein Eingabeformular erstellen?

      Es ist ja schön, dass die ganzen schweren Sachen hier erklärt werden, aber ich bin bisher noch immer daran gescheitert, dass ich kein vernünftiges Eingabeformular bekomme.
      Über die Einstellungsseite kann ich meine Felder zwar untereinander sortieren lassen, aber da fehlt eine logische Anordnung in Spalten, wenn ich do action all aufrufe

      Das kann man wohl über eine <table> hinbekommen, ich habe sogar so ein Formular zurechtgebastelt durch Raubkopien, aber es trägt nichts in die DB ein.

      Mir fehlt wie ich die Datenbank entsprechend anspreche, und wie ich die Daten dann eintrage.

      Ein weiteres Problem ist dabei, dass ich auch noch Radiobuttons dabei habe.

      Zum Schluss, ja, ich habe die Dokumentation durchgestöbert und auch die Easy-Tour versucht, doch die gibt falsche Anweisungen und spätestens bei der Rechtevergabe stimmt sie überhaupt nicht mehr.

      Kann nicht mal jemand eine ganz einfache Anfänger DB in die Bibliothek stellen, mit allen Feldtypen, die dann in einer Tabelle ausgegeben werden und über ein Formular eingelesen werden können. Ohne sonstige Formatierung und ähnliches.

     Antworten

    Beitrag von Sander (8133 Beiträge) am Sonntag, 3.Oktober.2010, 00:48.
    Re: Wie kann man ein Eingabeformular erstellen?

      >> aber da fehlt eine logische Anordnung in Spalten, wenn ich do action all aufrufe
      

      in der Reihenfolge, wie die Felder angelegt sind. stellst du das letzte feld auf pos 1, wird es ganz vorn / oben angezeigt.

      in der doku ist ein beispiel für ein eigenes Form drin, da steht dann auch, das man es an eine seite mit <do actio=all> oder <do action=input> senden muß.

      Wenn das jetzt nicht klappt, brauchen wir mehr infos, zb: wie sieht dein form jetzt aus, wie sieht die seite, die im form bei <form action="..."> drinsteht, aus.

      So einfach mal ohne konkretes was zusammenbauen ist müßig ;)

     Antworten

    Beitrag von horst (0 Beiträge) am Sonntag, 3.Oktober.2010, 13:53.
    Re: Re: Wie kann man ein Eingabeformular erstellen?

      Hallo Sander,

      danke erst mal für die Antwort.
      Die Felder kann ich schon in die REihenfolge bringen, die ich will, aber ich will nicht alle untereinander haben, sondern 1-3 nebeneinander. Also eine Tabelle o.ä.

      mit do action all oder Input bekomme ich die Untereinanderlistung.

      Ich schau nachher noch mal in der Doku nach, ob ich das Form finde.

      Und wie meine SEite u.ä jetzt aussieht solltest du lieber nicht fragen. :-(

      Ich versuche momentan durch die anderen Projekte in der Bibliothek schlau zu werden.

      Horst

     Antworten

    Beitrag von Claus (4645 Beiträge) am Sonntag, 3.Oktober.2010, 14:53. WWW: hammoniaweb.com
    Re: Re: Re: Wie kann man ein Eingabeformular erstellen?

      ganz ohne etwas perl und html wird das nix...;)

      nur mal ein Beispiel:

      <perl>
      if ($cmd eq "all")
      {
       get "Id==$Id";
      out"<table border=0 cellpadding=0 cellspacing=20 width=20>
      
      undsoweiter.........
      }
      </perl>
      

      <do action=all cmd=$cmd weitere Parameter....>

      Auf diese Art gibt man dann die eigene! Detailausgabe aus.

      Bei dem eigenen Formualr mußt Du halt die Vorgaben durch eine Tabelle ersetzen und die Felder entsprechend anordnen, siehe:

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

      Also statt so( wie in dem Beispiel aus der Doku):

      <table cellpadding="10" width="90%"> <tr> <td bgcolor="#f0f0f0"><c><form action="http://www.baseportal.de/cgi-bin/baseportal.pl?htx=/Benutzername/Verzeichnis/Template&cmd=add"
      method=post enctype="multipart/form-data">
      <input type="hidden" name="cmd=" value="add">
      <input type="hidden" name="htx=" value="/Benutzername/Verzeichnis/Template">
      

      Jetzt folgen die Feldbezeichnungen, abhängig von der Datenbank:

      ##########Hier jetzt die selbst erstellte Tabelle mit den Variablennamen!!!!
      out <<EOF;
      <table>
      <tr>td>Bitte geben Sie Ihren Vornamen an:</td><td> <input type="text" name="Vorname:="></td><td>Bitte geben Sie Ihren Nachnamen an:</td><input type="text" name="Nachname:="></td>
      </tr>
      <td>usw...............
      </table>
      <input type="submit" value="abschicken"><br>
      </form>
      



      Wie gesagt, ohne Kenntnisse wird das nix und es wird Dir wohl kaum jemand umsonst proggen...

      Gruesse

      Claus

     Antworten

    Beitrag von Horst (39 Beiträge) am Sonntag, 3.Oktober.2010, 20:17.
    Re: Re: Re: Re: Wie kann man ein Eingabeformular erstellen?

      Hallo Claus,

      danke, das hat mir wohl etwas weitergeholfen. Ich will ja nicht ein ganzes Programm programmiert haben, sondern die Schnittstelle ist mir nicht klar.

      Als Template habe ich jetzt eine Seite eingerichtet mit dem o.a. Code. Ich hoffe, das war mit dem Template gemeint.

      Ich erhalte jetzt eine Seite, die das macht, was ich mir vorgestellt habe.

      Aber eintragen kann ich sie nicht. Die Fehlermeldung erscheint, dass die Datenbank für den gewünschten Zugriff nicht freigegeben sei.
      Diese Meldung habe ich auch bei anderen Versuchen bekommen.

      Das Beispielformular habe ich umgesetzt, die STruktur des Radiobuttons habe ich hoffentlich richtig gemacht.

      Unklar ist mir noch
      1. out <<EOF; - da ist doch kein Perl code eingerichtet und wenn dann müsste ja auch noch ein schließendes EOF erscheinen. Was habe ich da übersehen?
      2. Beim Input type="radio" name="Frage
      gibt selfhtml keine := an, hier aber doch. In der Doku hatte ich mal was davon gelesen,finde es aber nicht wieder. Geht aber in beiden Formen nicht :-)

      Hier meine Seite

      <html><head></head><body>
      

      Datenbank Test<br>
      1 Name --- text Grösse=50<br>
      2 Email --- text Grösse=50<br>
      3 Frage --- radio Werte=1 2 3 4 5<br>
      4 Ja/nein --- checkbox Ausgabe markiert=Ja<br>


      <table cellpadding="10" width="90%"> <tr> <td bgcolor="#f0f0f0"><c><form action="http://www.baseportal.de/cgi-bin/baseportal.pl?htx=/EBaer/test/test5/test3&cmd=add"
      method=post enctype="multipart/form-data">
      <input type="hidden" name="cmd=" value="add">
      <input type="hidden" name="htx=" value="/EBaer/test/test5/test3">
      <table>
      <tr>
      <td>Bitte geben Sie Ihren Namen an: </td>
      <td><input type="text" name="Name:="></td>
      <td>Bitte geben Sie Ihre Email an: </td>
      <td><input type="text" name="Email:="></td>
      

      </tr>
      <td>Bitte werten Sie: </td>
      <td>
      NULL<input type="radio" name="Frage" value = 0  > 
      EINS<input type="radio" value = 1 name="Frage:="> 
      ZWEI<input type="radio" value = "Zwei"  name="Frage:="> 
      

      </td>


      <td>Bitte markieren Sie: </td>
      <td>
      Ja<input type="checkbox" name="Ja/nein:=" value = "ja">
      Nein<input type="checkbox" name="Ja/nein:=" value = "jnein">
      </td>
      

      </tr>
      </table>
      

      <input type="submit" value="abschicken"><br>
      </form>
      <body></html>
      

     Antworten

    Beitrag von Horst (39 Beiträge) am Sonntag, 3.Oktober.2010, 21:42.
    Re: Re: Re: Re: Re: Wie kann man ein Eingabeformular erstellen?

      Hallo,

      jetzt geht auch die Eingabe. Im Eingabe Template muss noch die Datenbank angegeben werden.
      Danke.

      Horst

     Antworten

    Beitrag von Claus (4645 Beiträge) am Montag, 4.Oktober.2010, 16:14. WWW: hammoniaweb.com
    Re: Re: Re: Re: Re: Re: Wie kann man ein Eingabeformular erstellen?

      >1. out <<EOF; - da ist doch kein Perl code eingerichtet und wenn dann müsste ja auch noch ein schließendes EOF erscheinen. Was habe ich da übersehen?
      

      Liegt daran, daß ich meistens in einer perl-Umgebung arbeite, das mit dem fehlenden EOF hast Du schon richtig erkannt..;)

      war auch nur mal als Ansatz gedacht.

      Hauptsache, es klappt jetzt bei Dir.

      Gruesse

      Claus

     Antworten

    Beitrag von Horst (39 Beiträge) am Dienstag, 5.Oktober.2010, 17:30.
    Klappt schon wieder nicht.: Re: Wie kann man ein Eingabeformular erstellen?

      Hallo noch mal alle.
      Ich habe nach der Seite Formular selbst erstellt http://doku.baseportal.de/69.html
      eine einfache Umfrage erstellt. Datenbank ist testumfrage
      Eine Seite Eingabe dient als Template:
      <html><head></head><body>
      <p><do action=input db=testumfrage></p>
      <p>Vielen Dank für Ihren Eintrag.</p>
      <body>
      </html>
      
      die Seite testumfrage enthält
      <html><head><title>Wie finden sie die Beispiele?</title>
      </head>														
      <body>
      <table border="1" cellpadding="10" width="90%"> <tr> 
      <c><form action="http://www.baseportal.de/cgi-bin/baseportal.pl?htx=/EBaer/testumfrage/Eingabe&cmd=add"
      method=post enctype="multipart/form-data">
      

      <input type="hidden" name="cmd=" value="add">
      <input type="hidden" name="htx=" value="/EBaer/testumfrage/Eingabe">
      

      <tr><td>Name: <input type="text" name="Name:="></td></tr>
      <td>Ich finde die Beispiele:</td>
      <td><input type="radio" name="wertung:=" value=0> schlecht </td>
      <td><input type="radio" name="wertung:=" value=0> mittel </td>
      <td><input type="radio" name="wertung:=" value=0> gut</td></tr>
      </table>
      </form>
      

      </body></html>

      Soweit alles wie angegeben. Die Seite sieht zwar nicht schön aus, aber ist ja auch für das Prinzip.
      Doch lässt sie sich nur ausfüllen, nicht abschicken.
      Aber bei meiner anderen, größeren mit mehr Feldern geht das nicht.
      Habe ich was übersehen?

      Was bewirkt eigentlich, dass die Seite abgeschickt wird? Ich weiß nicht, wonach ich in dem anderen BEispiel suchen soll.

      Habe gerade noch einmal getestet und festgestellt, dass mit Enter anscheinend die Seite abgeschickt wird.

      Horst

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 5.Oktober.2010, 17:59.
    Re: Klappt schon wieder nicht.: Re: Wie kann man ein Eingabeformular erstellen?

      es fehlt der submitknopf (<input type=submit>) und deine radioknöpfe haben alle den gleichen wert - egal was man anklickt.

     Antworten

    Beitrag von Claus (4645 Beiträge) am Dienstag, 5.Oktober.2010, 18:03. WWW: hammoniaweb.com
    Re: Klappt schon wieder nicht.: Re: Wie kann man ein Eingabeformular erstellen?

      hatte ich schon mal im Forum gepostet, aber hier noch mal zusammengefasst:


      Tstlink:

      http://baseportal.de/cgi-bin/baseportal.pl?htx=/Juergens/votum/vo

      Hier der dazugehörige Quelltext:


      <do action=input>
      <perl>
      

      out <<EOF;


      <form action="baseportal.pl?htx=/Juergens/votum/vo&cmd=add" name="_baseportal_form0" method="post" enctype="multipart/form-data"><input type=hidden name="htx=" value="/Juergens/votum/vo"><input type=hidden name="cmd=" value="add"><tr><td align=right>Wertung:</td><br><td><input type="radio" name="Wertung:=" value="diese Seite ist ein Hit" checked>&nbsp;diese Seite ist ein Hit<br> <input type="radio" name="Wertung:=" value="diese Seite ist gut">&nbsp;diese Seite ist gut <br><input type="radio" name="Wertung:=" value="diese seite ist ok">&nbsp;diese seite ist ok<br> <input type="radio" name="Wertung:=" value="geht so">&nbsp;geht so<br> <input type="radio" name="Wertung:=" value="mist">&nbsp;mist</td></tr><tr><td></td><td nowrap><br><input class=submit type=submit value="Abschicken"> </td></tr></form>
      

      EOF
      </perl>
      <loop db=vo code=perl>
      $Wertung{$Wertung}++;
      </loop>
      

      <perl>


      foreach my $k (sort keys %Wertung)
      

      {
      out "$k:$Wertung{$k}<br>";
      }
      </perl>
      


      DB mußt Du ändern und die Felder entsprechend in die DB inbauen!!!

       db=vo
      

      Hoffe, es hilft dir als Ansatz...;)

      Gruesse

      Claus

     Antworten

    Beitrag von Horst (39 Beiträge) am Dienstag, 5.Oktober.2010, 20:53.
    Re: Re: Klappt schon wieder nicht.: Re: Wie kann man ein Eingabeformular erstellen?

      Hallo Sander,

      danke, das wars!

      Hallo Claus,

      danke für den Ansatz. Da muss ich noch ein wenig experimentieren, aber das hilft mir auch weiter.

      Horst

     Antworten

    Beitrag von Claus (4645 Beiträge) am Montag, 4.Oktober.2010, 16:16. WWW: hammoniaweb.com
    Re: Re: Re: Re: Re: Re: Wie kann man ein Eingabeformular erstellen?

      >Im Eingabe Template muss noch die Datenbank angegeben werden.
      

      nicht unbedingt, reicht eigentlich auch, wenn im <do action=all db=deineDB...> angegeben wird.

      Gruesse

      Claus

     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.05s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!