Re: <br>s aus Feld entfernen - 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 Thomas Fedder, Stadt Ratingen (0 Beiträge) am Dienstag, 18.Oktober.2005, 22:11.
    Re: <br>s aus Feld entfernen

      Hallo Sander,

      das war perfekt, genau das, was ich gesucht habe.

      Ich gebe zu, das ich die Funktionsweise noch nicht 100% verstanden habe, aber zumindest glaube ich, dass ich es so langsam verstehe.

      DANKE

      ciao

      TF


    Ihre Antwort:

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

    Neuer Eintrag


 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Thomas Fedder, Stadt Ratingen (0 Beiträge) am Dienstag, 18.Oktober.2005, 14:12.
    <br>s aus Feld entfernen

      Hallo,

      durch mehrfachen Down/upload habe ich in einer DB in textareas lauter <br>
      Steuerzeichen.
      Diese könnte ich zwar manuell in jedem Datensatz entfernen, was aber bei über 300 Datensätzen nicht effizient ist.
      Gibt es einen Perl Befehl oder ähnliches, welches in textarea Felder die <br> entfernt und stattdessen einen Zeilenumburch herstellt?

      Danke

      TF

     Antworten

    Beitrag von Thomas H. (180 Beiträge) am Dienstag, 18.Oktober.2005, 16:46.
    Re: <br>s aus Feld entfernen

      Ich glaube so, habe es aber noch nicht getestet.

      <perl>
      get "Id==#", "datenbankname";
      $Text1=~s/<br>|<BR>/\n/g; 
      out "<form>";
      out "<textarea name=\"Text1\" cols=\"40\" rows=\"18\">";
      out $Text1;
      out "</textarea>";
      out "</form>";
      </perl>
      


      Thomas H.

     Antworten

    Beitrag von Thomas Fedder, Stadt Ratingen (0 Beiträge) am Dienstag, 18.Oktober.2005, 17:48.
    Re: <br>s aus Feld entfernen

      Hi,

      danke für die Hilfe.

      Die Datenbank heisst
      dienstleistungen_save_13_10_2005
      das Feld heisst langbeschreibung.

      Also lautet so der Code:

      <perl>
      get "Id==#", "dienstleistungen_save_13_10_2005";
      $langbeschreibung=~s/<br>|<BR>/\n/g; 
      out "<form>";
      out "<textarea name=\"langbeschreibung\" cols=\"40\" rows=\"18\">";
      out $langbeschreibung;
      out "</textarea>";
      out "</form>";
      </perl>
      

      Ein Erfolg in so fern, dass mir in einem neuen Textarea Feld ein von <br>s bereinigtes Feld eines beliebigen Datensatz angezeigt wird.
      Allerdings wurde der Datensatz in der DB noch nicht modifiziert.

      Jetzt fehlt aber noch was:
      - Das Feld im Datensatz muss entsprechend modifiziert werden
      - alle Datensätze müssen entsprechend modifiziert werden.

      Also habe mal folgendes versucht:

      <perl>
      get "Id==#", "dienstleistungen_save_13_10_2005";
      $text1=~s/<br>|<BR>/\n/g; 
      

      mod "Id==*", ["langbeschreibung", "$text1"], "dienstleistungen_save_13_10_2005";
      </perl>
      

      Jetzt sind jedoch alle Inhalte des Feldes "langbeschreibung" gelöscht.

      Irgendeine Idee?

      Danke

     Antworten

    Beitrag von Claus (4645 Beiträge) am Dienstag, 18.Oktober.2005, 18:39.
    Re: <br>s aus Feld entfernen

      man sollte schon wisse, was man da tut;-)

      # holt den letzten Datensat
      
      * passt auf ALLES!!!
      ? holt zufälligen Datensatz

      Also das ganze mal in eine Schleife packen:

      <perl>
      get "Id==*", "dienstleistungen_save_13_10_2005";
      
       while(get_next("dienstleistungen_save_13_10_2005"))
      {
      $text1=~s/<br>|<BR>/\n/g; 
      

      mod "Id==$Id", ["langbeschreibung", "$text1"], "dienstleistungen_save_13_10_2005";


      </perl>
      


      So in der Art, not testet.

      Ich hoffe, Du machst vorher 'ne Kopie;-))

      Gruß

      Claus

     Antworten

    Beitrag von Thomas Fedder (49 Beiträge) am Dienstag, 18.Oktober.2005, 19:22.
    Re: <br>s aus Feld entfernen

      Hi,
      > man sollte schon wisse, was man da tut;-)
      ich versuche ja gerade zu verstehen, was man alles mit mod und Co erreichen kann.
      

      Dank dir fange ich so langsam an, es zu verstehen.

      >Ich hoffe, Du machst vorher 'ne Kopie;-))
      
      Das versteht sich von selber :-))

      Der Code funktioniert im Grunde, nur bricht der Lauf ab (Ich habe 340 Datensätze)

      Da nicht in jedem Datensatz das ganze gemacht werden muss, lasse ich das ganze jetzt auf ausgesuchte Datensätze los:
      <perl>
      get "Id==15", "dienstleistungen";
      {
      $langbeschreibung=~s/<br>|<BR>/\n/g; 
      mod "Id==$Id", ["langbeschreibung", "$langbeschreibung"], "dienstleistungen_save_13_10_2005";
      }
      </perl>
      


      DAS funktioniert.
      DANKE Claus (Ich hätte fast gesagt: Wie immer :-))

      ciao

      TF

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 18.Oktober.2005, 21:48.
    Re: <br>s aus Feld entfernen

      das problem ist bei bp, wenn du in nem get_next ein mod auf die gleiche db machst, rennt sich das script irgendwie tot.
      arbeitet man mit nem ergebnishash gehts auf einmal ganz fix

      get "..",$db,"erg";
      while(get_next "erg"){
      mod ......,$db;
      

      }

      ausserdem gibts bei regex auch ein ignorecase:
      Text1=~s/<br>|<BR>/\n/g;
      wird zu
      Text1=~s/<br>/\n/gi;

     Antworten

    Beitrag von Thomas Fedder, Stadt Ratingen (0 Beiträge) am Dienstag, 18.Oktober.2005, 22:11.
    Re: <br>s aus Feld entfernen

      Hallo Sander,

      das war perfekt, genau das, was ich gesucht habe.

      Ich gebe zu, das ich die Funktionsweise noch nicht 100% verstanden habe, aber zumindest glaube ich, dass ich es so langsam verstehe.

      DANKE

      ciao

      TF

     Antworten

    Beitrag von Claus (4645 Beiträge) am Mittwoch, 19.Oktober.2005, 09:19.
    Re: <br>s aus Feld entfernen

      wusste ich auch noch nicht;-)

     Antworten

    Beitrag von Claus (4645 Beiträge) am Dienstag, 18.Oktober.2005, 18:49.
    Re: <br>s aus Feld entfernen/Was übersehen;-))

      Hatte gerade was übersehen, fehlte 'ne Klammer. Außerdem heißt Dein Feld ja auch nicht text1:

      <perl>
      get "Id==*", "dienstleistungen_save_13_10_2005";
      
       while(get_next("dienstleistungen_save_13_10_2005"))
       
      {
      $langbeschreibung=~s/<br>|<BR>/\n/g; 
       
      

      mod "Id==$Id", ["langbeschreibung", "$langbeschreibung"], "dienstleistungen_save_13_10_2005";

      }
      </perl>
       
      

      So sollte es gehen;-)

     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!