Re: 3. und letzter Versuch - Hilfe bei Templates? - 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 Sander (8133 Beiträge) am Montag, 4.Juni.2001, 22:58.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      Hier nervt niemand ;-)
      enctype muß unbedingt angegeben werden, und bei den hidden muß ein = dahinter. wenn du über loop gehst, fällt das ~= bei der Suche weg - wird, glaube ich, nur von do action.. unterstützt. dafür aber =

      <FORM NAME="LAYOUTFORM" ACTION="http://baseportal.de/cgi-bin/baseportal.pl?htx=/MSK/list" METHOD=POST enctype="multipart/form-data">
      <INPUT TYPE=HIDDEN NAME="cmd=" VALUE="search"><INPUT TYPE=HIDDEN NAME="range=" VALUE="0,10"><INPUT TYPE=HIDDEN NAME="htx=" VALUE="list">
      <SELECT ID="Auswahlfeld1" NAME="Rubrik=">
      

      die Ausgabe:

      nach den Suchwerten müsste Rubrik mit ~= abgefragt werden. Die Leerzeichen in Plz - .. werden nicht funzen, am besten ohne Sonder/Leerzeichen erstellen.

      <loop db=Contact sort^=-Rubrik range^=0,10 PLZ - Gebiet==$PLZ - Gebiet Rubrik~=$Rubrik>
      

      So ungefähr ;-)

      Sander


    Ihre Antwort:

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

    Neuer Eintrag


 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Michael (450 Beiträge) am Montag, 4.Juni.2001, 18:31.
    3. und letzter Versuch - Hilfe bei Templates?

      hallo
      kann hier wirklich niemand einem newcomer auf die sprünge helfen?
      ich möchte eigene seiten für die suche, das listing und die Eingabe mit einer Datenbank verknüpfen.
      ich komme einzig und allein nicht mit der verknüpfung klar.
      wie erreiche ich z.b dass bei bei einer suche dann anschliessend das listformular mit dem entsprechenden ergebnis angezeigt wird.
      ich bekomme es bislang nur hin, wenn suche und listing auf einer seite sind.
      bei dem eingabeformular wäre mir am liebsten, wenn ich es direkt auf meiner homeoage hätte und von dort aus eingaben möglich wären.habe dazu den in der dokumentation beschriebenen weg ausprobiert, geklappt hat es allerdings nicht.
      muss allerdings dazu sagen, dass ich vom programmieren nicht viel ahnnung habe:))
      viele fragen ich weiss, kann mir jemand ein wenig unter die arme greifen?
      danke im voraus....

      Michael

     Antworten

    Beitrag von Sander (8133 Beiträge) am Montag, 4.Juni.2001, 18:43.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      Die Formulare müssen alle wie im dokubeispiel selbst gestrickt werden, und an das Template, das die Listenausgabe macht, geschickt werden (form action=www.baseport....?htx=Ausgabetemplate).
      Dabei ist zu beachten, das beim Eingabeform der Name der Felder immer mit := enden (name="Email:=") und beim Suchen ~= . Ausserdem muß das Template nochmal mit einem hiddenfeld mitgechickt werden
      <input type=hidden name="htx=" value="Ausgabetemplate">
      
      und dann den Befehl, was gemacht werden soll.
      <input type=hidden name="cmd=" value="add"> für hinzufügen
      <input type=hidden name="cmd=" value="search"> für suchen.
      

      Das müsste es gewesen sein.

      Sander

     Antworten

    Beitrag von Michael (450 Beiträge) am Montag, 4.Juni.2001, 20:52.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      Hallo Sander,
      vielen dank für deine tips.
      Leider läuft das ganze immer noch nicht, obwohl ich denke, dass ich alles richtig gemacht habe. siehe auszugsweise html-code:


          <FORM NAME="LAYOUTFORM" ACTION="http://baseportal.de/cgi-bin/baseportal.pl?htx=/MSK/list" METHOD=POST>
              <INPUT TYPE=HIDDEN NAME="cmd" VALUE="search"><INPUT TYPE=HIDDEN NAME="range" VALUE="0,10"><INPUT TYPE=HIDDEN NAME="htx" VALUE="list">
              
      

      <SELECT ID="Auswahlfeld1" NAME="Rubrik~=">
                             
      das ausgabeformular heisst list, die datenbank Contact.

      das listfomular sieht auszugsweise so aus:
       <do action=input> 
      <loop db=Contact sort^=-Rubrik range^=0,10  PLZ - Gebiet==$PLZ - Gebiet Rubrik==$Rubrik>
      <font face="arial" size="1">
      $Datum  $EMail  $WWW
      </font><font face="arial" size="2"><br>
      <h7>$Raum<h7><br>
      <br>
      $Text
      <br><hr>
      </loop>
      

      kannst du mir sagen, woran es liegt?
      sorry, wenn ich nerve, aber ich weiss echt nicht wo ich ansetzen soll.
      danke im voraus.
      Michael

     Antworten

    Beitrag von Sander (8133 Beiträge) am Montag, 4.Juni.2001, 22:58.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      Hier nervt niemand ;-)
      enctype muß unbedingt angegeben werden, und bei den hidden muß ein = dahinter. wenn du über loop gehst, fällt das ~= bei der Suche weg - wird, glaube ich, nur von do action.. unterstützt. dafür aber =

      <FORM NAME="LAYOUTFORM" ACTION="http://baseportal.de/cgi-bin/baseportal.pl?htx=/MSK/list" METHOD=POST enctype="multipart/form-data">
      <INPUT TYPE=HIDDEN NAME="cmd=" VALUE="search"><INPUT TYPE=HIDDEN NAME="range=" VALUE="0,10"><INPUT TYPE=HIDDEN NAME="htx=" VALUE="list">
      <SELECT ID="Auswahlfeld1" NAME="Rubrik=">
      

      die Ausgabe:

      nach den Suchwerten müsste Rubrik mit ~= abgefragt werden. Die Leerzeichen in Plz - .. werden nicht funzen, am besten ohne Sonder/Leerzeichen erstellen.

      <loop db=Contact sort^=-Rubrik range^=0,10 PLZ - Gebiet==$PLZ - Gebiet Rubrik~=$Rubrik>
      

      So ungefähr ;-)

      Sander

     Antworten

    Beitrag von Michael (450 Beiträge) am Dienstag, 5.Juni.2001, 01:04.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      Hallo Sander,

      danke hat super geklappt, kann jetzt direkt von meiner page die daten eingeben und abfragen, genau wie ich es wollte:))
      übrigens, funktioniert trotz leerzeichen bei PLZ...habe den Pfad mit .../MSK/...angegeben.:))gute dokumentation!!!!
      Aber jetzt habe ich noch eine oder zwei fragen:))))
      wenn ich im titel der list nach einer abfrage einen bestimmte variable als titel ausgegeben haben möchte, wie mache ich das?
      gut wäre es auch, wenn du mir noch sagen könntest, wie ich dann den ausdruck x von y datensätzen darstelle.

      und letzte frage:))) wenn ich erreichen will, dass ein datensatz sobald ein bestimmtes feld leer ist, gelöscht wird, wie stelle ich das an?

      thanks a lot:))

      michael

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 5.Juni.2001, 08:28.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      1) würde ich Vorschlagen, den Wert in der URL mitzuschicken (http://base...&Rubrik=blabla) - bei Leerzeichen ein + verwenden.
      2) unter den loop
      $_amount von $_amount_all Einträge
      
      3) erkläre das mal genauer, etwa wenn beim Eintragen nicht alle Felder ausgefüllt wurden?

      Sander

     Antworten

    Beitrag von Michael (450 Beiträge) am Dienstag, 5.Juni.2001, 13:34.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      Hallo Sander,

      vielen, vielen dank, 1. u 2. funzen hervorragend:)))

      zu 3. genau, wenn jemand z.b. keinen texteintrag macht, soll der datensatz direkt gelöscht werden.

      hast du dazu auch eine idee??:))

      thanks

      michael

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 5.Juni.2001, 13:52.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      ich würde da sagen, er wird gar nicht erst gespeichert, bzw wird nochmal ausgegeben, um den fehlenden Text nachzuholen. geht über Javascript. In der bib im Gästebuch ist ein Beispiel.
      Für nicht speichern mußt du <do action=input> rausnehmen und dafür perl einfügen

      <perl>
      if ($_put{Feldname} ne "")
      {
      put undef,"contact";
      }
      else
      {
      out "Sie haben keinen Text eingegeben.<br>Bitte gehen Sie zurück und holen dies nach";
      }
      </perl>
      

      Sander

     Antworten

    Beitrag von Michael (450 Beiträge) am Dienstag, 5.Juni.2001, 14:20.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      hallo sander,

      du bist echt ok, klappt einwandfrei.

      nur ein kleines problem, wie ereeiche ich jetzt, dass bei einer korrekten eingabe ein beliebiger text und bei einer falschen eingabe der andere text angezigt wird?
      und noch was? ist es möglich weitere felder gleichzeitig so zu kontrollieren, wie muss ich dann bei perl weitermachen?
      sorry, du weisst ja, kenn mich da echt nicht gerade toll aus.:((

      danke

      michael

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 5.Juni.2001, 14:32.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      für mehrere Machen wir es anders:

      <perl>
      $msg="Sie haben keinen... eingegeben." if ($_put{Feldname1} eq "");
      $msg=$msg." Sie haben keinen... eingegeben." if ($_put{Feldname2} eq "");
      $msg=$msg." Sie haben keinen... eingegeben." if ($_put{Feldname3} eq "");
      

      usw

      $msg=$msg."Bitte gehen Sie zurück und holen Sie dies nach";
      

      if ($msg eq "")
      {
      put undef,"contact";
      $msg="Daten wurden gespeichert. Vielen Dank für Ihren Eintrag"; # Hier kannst du beliebigen Text einfügen
      }
      

      out "$msg";

      </perl>
      

      die Feldnamen mußt du noch einfügen und eventuell noch erweitern.

      Sander

     Antworten

    Beitrag von Michael (450 Beiträge) am Dienstag, 5.Juni.2001, 15:17.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      hallo sander

      funzt leider nicht ganz. die abrage läuft, dh, wenn ich eines der felder nicht eingebe, dann kommt die entsprechende fehlermeldung, gebe ich alles ein, kommt aber "bitte gehen sie zurück...." und der eintrag wird nicht übernommen???

      <html>
      <head>
       </head>
      <body><font face ="arial" font size = 2>
      <p><perl>
      $msg="Sie haben keinen Raum eingegeben." if ($_put{Raum} eq "");
      $msg=$msg." Sie haben keine EMailadresse eingegeben." if ($_put{EMail} eq "");
      $msg=$msg." Sie haben keinen Text eingegeben." if ($_put{Text} eq "");
      $msg=$msg."Bitte gehen Sie zurück und holen Sie dies nach.";
      

      if ($msg eq "")
      {
      put undef,"Contact";
      $msg="Daten wurden gespeichert. Vielen Dank für Ihren Eintrag"; 
      }
      out "$msg";
      </perl></font>
      </p>
      <body>
      </html
      

      ich krieg noch die krise:))))

      michael

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 5.Juni.2001, 15:27.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      ja, Fehler von mir :-)))

      $msg=$msg."Bitte gehen Sie zurück und holen Sie dies nach." if $msg ne "";
      

      da fehlte die bedingung

      Sander

     Antworten

    Beitrag von Michael (450 Beiträge) am Dienstag, 5.Juni.2001, 15:46.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      hallo sander

      einsame klasse, läuft wie am schnürchen:)) so langsam kapiere ich auch was, dank dir!!!

      darf ich nochmal nerven:)))
      ich habe mir aus einem gästebuch ein stück code rausgeholt, funktioniert auch alles soweit.
      nur ein problem, wenn ich eine abfrage mache, dann zeigt mir die listseite zwar das richtige ergebnis an, aber der link auf die nächste seite ist aktiviert, auch wenn das ergebnis bspw. nur 2 einträge bei einer range von 10 zeigt. kann man das unterbinden, quasi den link nur dann aktivieren, wenn die range von 10 überschritten wird?? angezeigt werden kann er ja, nur eben ohne link....
      wäre toll, wenn du mir hier auch noch einen tip geben könntest...vielleicht hast du ja lust und zeit dazu:)))
      ich schau heute am späteren abend nochmal rein..muss noch was tun:)))

         get "Id==0","Contact";
         my $newrange=$_range+$_range_length;
         my $oldrange=$_range-$_range_length;
         $oldrange=0 if $oldrange<0 && $oldrange>-$_range_length;
         out "<p align=center>";
         out " <font size=-1>";
         if ($oldrange>=0) {
          out "  [ <a href=\"$_link&range=$oldrange,$_range_length\">Vorherige Seite</a> ] ";
         } else {
          out "  [ Vorherige Seite ] ";
         }
         out "  [ <a href=\"http://baseportal.de/cgi-bin/baseportal.pl?htx=/MSK/Guestbook/add\">Eintrag hinzuf&uuml;gen</a> ]";
         if ($newrange<$_amount_all) {
          out "  [ <a href=\"$_link&range=$newrange,$_range_length\">N&auml;chste Seite</a> ]";
         } else {
          out "  [ N&auml;chste Seite ]";
         }
         out " </font>";
         out "</p>";
      

      thanks a lot

      michael

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 5.Juni.2001, 18:34.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      hat das get am Anfang was zu bedeuten? Hier wird immer der erste Ds geholt, dadurch wird der Link immer angezeigt, weil die Bedingungungen immer wahr sind und es immer einen 2ten Ds gibt. Normal unter Loop sollte er funzen.

      Sander

     Antworten

    Beitrag von Michael (450 Beiträge) am Dienstag, 5.Juni.2001, 23:50.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      hallo sander,

      also ich habe das get rausgeworfen, das problem ist jedoch unverändert.
      wenn ich eine abfrage mache, die beispielsweise 2 ds richtigerweise als ergebnis auswirft, kann man über diesen link dann auf eine seite gehen, wo wieder alles ds angezeigt werden, was ja unsinnig ist.

      <perl>
         "Contact";
         my $newrange=$_range+$_range_length;
         my $oldrange=$_range-$_range_length;
         $oldrange=0 if $oldrange<0 && $oldrange>-$_range_length;
         out "<p align=center>";
         out " <font size=-1>";
         if ($oldrange>=0) {
          out "  [ <a href=\"$_link&range=$oldrange,$_range_length\">Vorherige Seite</a> ] ";
         } else {
          out "  [ Vorherige Seite ] ";
         }
         out "  [ <a href=\"http://baseportal.de/cgi-bin/baseportal.pl?htx=/MSK/Guestbook/add\">Eintrag hinzuf&uuml;gen</a> ]";
         if ($newrange<$_amount_all) {
          out "  [ <a href=\"$_link&range=$newrange,$_range_length\">N&auml;chste Seite</a> ]";
         } else {
          out "  [ N&auml;chste Seite ]";
         }
         out " </font>";
         out "</p>";
        </perl>
      


      wenn du mal lust und laune hast:)))

      danke dir

      michael

     Antworten

    Beitrag von Michael (450 Beiträge) am Dienstag, 5.Juni.2001, 14:05.
    Re: 3. und letzter Versuch - Hilfe bei Templates?

      Hallo Sander,

      vielen, vielen dank, 1. u 2. funzen hervorragend:)))

      zu 3. genau, wenn jemand z.b. keinen texteintrag macht, soll der datensatz direkt gelöscht werden.

      hast du dazu auch eine idee??:))

      thanks

      michael

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