Re: .de vergessen - mhhh... - 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 Christoph Bergmann (8110 Beiträge) am Mittwoch, 22.August.2001, 14:52.
    Re: .de vergessen - mhhh...

      So ganz versteh ich das alles noch nicht... Bzw. was daran nicht klappen soll... Vielleicht mal die grundsätzliche Sache:

      Wenn Du ein normales <textarea...>-Eingabefeld machst wird an der Stelle an der ein Nutzer "Return" drückt \n eingefügt. Daran ändert baseportal nix, das kommt so in die Datenbank. Gibt man nun den Inhalt eines solchen Feldes (nennen wir es "Text") einfach aus, erscheinen in einer normalen HTML-Seite KEINE Zeilenumbrüche, weil \n für den Browser nix is... Dazu muss man

      convert_br($Text)

      schreiben, das wandelt die \n in <br>.

      Schreibst Du beim <textarea...> ein "wrap=virtual" dazu, dann wird beim rechten Rand des Textfeldes zwar eine neue Zeile begonnen, es werden aber nicht wirklich \n in den Text eingefügt... Schreibst Du ein "wrap=physical", dann werden auch tatsächlich \n eingefügt.

      Was genau funktioniert jetzt bei Dir nicht?


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von steffen niegsch (73 Beiträge) am Dienstag, 21.August.2001, 00:48.
    @Doku-Team und andere

      Hallo,

      in der Bibliothek steht das Beispiel 'Hierarchische Verzeichnisstruktur'.
      Nur wird der Zeilenumbruch nicht übernommen.



      <form action="bbeta.pl?htx=$htx&cmd=$cmd$cf&id=$id" method="post" enctype="multipart/form-data">
       <input type=hidden name="htx=" value="$htx">
       <input type=hidden name="cmd=" value="$cmd">
       <input type=hidden name="id=" value="$id">
       $hcf
       $als
       <table>
       <tr>
        <td align=right><font face=arial,helvetica size=2>Titel:</td>
        <td><font face=arial,helvetica size=2><input type="text" name="Titel=" size=20 value="$Titel"></td>
       </tr><tr>
        <td align=right><font face=arial,helvetica size=2>Text:</td><td><font face=arial,helvetica size=2><textarea name="Text=" cols=50 rows=12 wrap=virtual>$Text</textarea></td>
       </tr><tr>
        <td></td><td nowrap><input type=submit value="Abschicken"> <input type=reset value="Zur&uuml;cksetzen">
       </td></tr></table>
       </form>
      

      Auch wenn ich wrap=physical setze wird der Text fortlaufend ausgegeben. Das ist nicht unbedingt übersichtlich. Die einzigste Möglichkeit die ich bis jetzt gefunden habe ist den Text in mehrere verschachtelte Tabellen zu schreiben.

      Gibt es eine andere Möglichkeit den Zeilenumbruch zu erzwingen?

      steffen

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Dienstag, 21.August.2001, 01:15.
    Re: @Doku-Team und andere - convert_br

      Welchen Text meinst Du? Du musst den auf jeden Fall mit "convert_br" wandeln:

      $text=convert_br($text);
      

     Antworten

    Beitrag von steffen niegsch (73 Beiträge) am Dienstag, 21.August.2001, 02:23.
    Re: @Doku-Team und andere - convert_br

      Ich meine den Text der über $Text eingegeben wird.

      convert_br habe ich jetzt übernommen. Wenn man jetzt
      im Formular den Text schreibt wird für 'enter' ein <br> eingefügt. Die Ausgabe bleibt aber falsch. Erst wenn ich noch einmal auf ändern gehe und das ganze noch einmal speichere ist die Ausgabe so wie sie sein soll.

      Kann man das <br> nicht unsichtbar machen. Wenn der eingegebene Text später korrigiert wird ist das sehr unuebersichtlich.
      Aber im Prinziep funktioniert es ja über den "Zwischenscritt"

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 21.August.2001, 08:26.
    Re: @Doku-Team und andere - convert_br

      bei wrap=virtual wird ein \n eingefügt, was ja dann unsichbar ist. mit convert_br() bekommst du es zurück in <br>.

      Sander

     Antworten

    Beitrag von steffen niegsch (73 Beiträge) am Mittwoch, 22.August.2001, 08:52.
    Re: @Doku-Team und andere - convert_br

      Ok. Aber um den Ablauf zu zeigen habe ich davon mal Bilder gemacht. Zu sehen sind die unter
      http://www.rerorust/bp/bp1.jpg - bp4.jpg.

      Das ganze soll offen für jeden sein. Nur man kann dem normalen User nicht zumuten einen Text zu ändern in dem für ihn viele "Steuerzeichen" sind. Das empfindet er doch zurecht als schwer.

      steffen

     Antworten

    Beitrag von steffen niegsch (73 Beiträge) am Mittwoch, 22.August.2001, 08:54.
    .de vergessen

      ...

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Mittwoch, 22.August.2001, 14:52.
    Re: .de vergessen - mhhh...

      So ganz versteh ich das alles noch nicht... Bzw. was daran nicht klappen soll... Vielleicht mal die grundsätzliche Sache:

      Wenn Du ein normales <textarea...>-Eingabefeld machst wird an der Stelle an der ein Nutzer "Return" drückt \n eingefügt. Daran ändert baseportal nix, das kommt so in die Datenbank. Gibt man nun den Inhalt eines solchen Feldes (nennen wir es "Text") einfach aus, erscheinen in einer normalen HTML-Seite KEINE Zeilenumbrüche, weil \n für den Browser nix is... Dazu muss man

      convert_br($Text)

      schreiben, das wandelt die \n in <br>.

      Schreibst Du beim <textarea...> ein "wrap=virtual" dazu, dann wird beim rechten Rand des Textfeldes zwar eine neue Zeile begonnen, es werden aber nicht wirklich \n in den Text eingefügt... Schreibst Du ein "wrap=physical", dann werden auch tatsächlich \n eingefügt.

      Was genau funktioniert jetzt bei Dir nicht?

     Antworten

    Beitrag von steffen niegsch (73 Beiträge) am Mittwoch, 22.August.2001, 16:42.
    Re: .de vergessen - mhhh...

      Wie am Anfang dieses Threads geschrieben. Das Beispiel steht habe ich aus der Bibliothek.

      http://baseportal.de/cgi-bin/bbeta.pl?htx=/service/faq/tr&cmd=new&id=49

      Das ist der Link zum testen. Schreib einfach mal was und las eine Zeile frei. z.B. a 'enter' a

      Und nun kommt der Quellcode.
      -----------------------------------------------------
      .
      .
      .
      # --- form_out - formular fuer eingabe/aenderung ausgeben ---
      # rein:	$id		zu uebermittelnde Id
      #		$cmd	zu uebermittelnder "cmd"
      #		$als	zu uebermittelndes $als ("Unterpunkt" oder "Folgepunkt")
      #		$Titel	im Textfeld "Titel" vorgegebener Wert
      #		$Text	im Textarea-Feld "Text" vorgegebener Wert
      #
      sub form_out
      {
       my($id, $cmd, $als, $Titel, $Text)=@_;
      
       $als='<input type=hidden name="als=" value="'.$als.'">' if $als; # als HTML-hidden-Feld, falls vorhanden  my $hcf='<input type=hidden name="frame=" value="inhalt">' if $cf; # als HTML-hidden-Feld, falls gesetzt  $Titel=convert_html($Titel); $Text=convert_br($Text); # sonderzeichen entschaerfen
       out <<EOF;  <form action="bbeta.pl?htx=$htx&cmd=$cmd$cf&id=$id" method="post" enctype="multipart/form-data">  <input type=hidden name="htx=" value="$htx">  <input type=hidden name="cmd=" value="$cmd">  <input type=hidden name="id=" value="$id">  $hcf  $als  <table>  <tr>   <td align=right><font face=arial,helvetica size=2>Titel:</td>   <td><font face=arial,helvetica size=2><input type="text" name="Titel=" size=20 value="$Titel"></td>  </tr><tr>   <td align=right><font face=arial,helvetica size=2>Text:</td><td><font face=arial,helvetica size=2><textarea name="Text=" cols=50 rows=12 wrap=virtual>$Text</textarea></td>  </tr><tr>   <td></td><td nowrap><input type=submit value="Abschicken"> <input type=reset value="Zurücksetzen">  </td></tr></table>  </form>
      EOF
      }
      </perl>
      

      <br>

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

      Den gesamten Code konnte ich wegen der Länge nicht posten.

      steffen

     Antworten


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