php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 23-10-2007, 19:41
Seggl-hoch-drei
 Registrierter Benutzer
Links : Onlinestatus : Seggl-hoch-drei ist offline
Registriert seit: Sep 2007
Beiträge: 312
Seggl-hoch-drei ist zur Zeit noch ein unbeschriebenes Blatt
Standard Textarea Zeilenumbruch

Hallo,

ich habe eine Textarea in meinem XHTML-Dokument mit Zeichensatz iso-8859-1.

Den Inhalt dieser Area sende ich per Ajax:
Code:
save_profile_h.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	save_profile_h.send(parameters);
an eine PHP-Datei, wo auch alles richtig ankommt. Ich speichere den Inhalt nach bearbeitung mit

PHP-Code:
$beschreibung =     mysql_real_escape_string(nl2br(htmlentities(strip_tags($_POST["beschreibung"]), ENT_QUOTES"UTF-8"))); 
ab.
In der SQL-Datenbank stehen die Zeilenumbrüche richtig drin.
Wenn ich den Inhalt des DB-Feldes dann ganz normal in dem XHTML Dokument mit iso-8859-1 als Zeichensatz ausgebe, erscheint auch dort der Umbruch.

Variante mit IE:

Lese ich allesdings diesen Wert des Textfeldes aus der DB wieder aus und schicke ihn als Antwort eines Ajax-Requests mit, fehlt der Zeilenumbruch in der Antwort, wenn ich ihn in eine Textarea schreibe.

Variante mit FF:

Wenn ich mit dem FF das gleiche wie mit dem IE mache, erzeugt er mir einen Umbruch, aber leider nicht einen, sondern gleich 2.

Meine Frage: Hat es eventuell irgendwas mit meinen Zeichensätzen zu tun? Wie bekomme ich es hin, dass ich für einen Umbruch auch später einen Umbruch habe? Und ist das unter Linux / Mac dann eventuell nochmal was anderes?

MfG,
seggl-hoch-drei
Mit Zitat antworten
  #2 (permalink)  
Alt 23-10-2007, 20:08
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Wie Zeilenumbrüche interpretiert werden, ist Betriebssystemabhängig!

Windows: \r\n
Linux: \n
Mac: \r

Die Funktion nl2br ersetzt \n durch <br />, es sind also zwei Umbrüche (einmal \r und einmal das HTML-br). Der Firefox interpretiert solche weißen Zeichen in XML-Daten, der IE nicht in dem Maße, wie es der FF macht!
Auf der sicheren Seite bist du, wenn du alle Zeilenumbrüche normierst:
PHP-Code:
$input str_replace( array( '\r\n''\r' ), '\n'$input ); 
Mit Zitat antworten
  #3 (permalink)  
Alt 23-10-2007, 21:34
Seggl-hoch-drei
 Registrierter Benutzer
Links : Onlinestatus : Seggl-hoch-drei ist offline
Registriert seit: Sep 2007
Beiträge: 312
Seggl-hoch-drei ist zur Zeit noch ein unbeschriebenes Blatt
Standard

danke für den tipp
hab das jetzt reingemacht, das selbe problem besteht noch immer...

wenn ich im IE mit einem alert den zurückkommenden text ausgebe, steht da

"a b" und im FF "a\r\n\r\nb" für die eingabe "a UMBRUCH b".

Das vom FF ist zwar auch nicht richtig, aber ws wäre mir schon lieber als die tolle Lösung vom IE...

Wisst ihr, an was es sonst noch liegen könnte?

EDIT: Ich habs jetzt auch noch mit Opera probiert. Der machts genau gleich wie der FF.
Es sieht ganz so aus, dass der IE ein Problem mit \r\n\r\n hat...

Aber wie krieg ich das jetzt auch noch im IE zum laufen?

EDIT2: Gebe ich in das Textfeld direkt per JS "a\r\nb" aus, schreibt Meister IE auch alles in eine Zeile, getrennt von einem Leerzeichen...

Geändert von Seggl-hoch-drei (23-10-2007 um 21:49 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 23-10-2007, 21:43
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.722
Kropff befindet sich auf einem aufstrebenden Ast
Standard

imho reicht für die darstellung im ie auch ein \n zum ersetzen aus.

gruß
peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #5 (permalink)  
Alt 23-10-2007, 21:56
Seggl-hoch-drei
 Registrierter Benutzer
Links : Onlinestatus : Seggl-hoch-drei ist offline
Registriert seit: Sep 2007
Beiträge: 312
Seggl-hoch-drei ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hmm
auch nur mit "\n" geht es nicht.

Das Problem, dass FF und Opera jeweils 2 Umbrüche gemacht habe, ist jetzt behoben. Ich hab da einen Fehler in meinem Skript gehabt...

Der Internet Explorer macht aber immernoch den gleichen Sch....
Mit Zitat antworten
  #6 (permalink)  
Alt 23-10-2007, 22:42
Seggl-hoch-drei
 Registrierter Benutzer
Links : Onlinestatus : Seggl-hoch-drei ist offline
Registriert seit: Sep 2007
Beiträge: 312
Seggl-hoch-drei ist zur Zeit noch ein unbeschriebenes Blatt
Standard

So langsam mache ich Fortschritte.

Ich habe jetzt statt innerHTML innerText zum Beschreiben der Textfelder genommen.

Internet Explorer macht es jetzt ENDLICH (!!!!) richtig. Opera auch, aber der FF (der eigentlich alles richtig macht), macht es jetzt komplett falsch. Er lässt das Feld einfach leer.

Meine Frage: Wie beschreibt man Textareas richtig mit ALLEN Browsern?
Mit Zitat antworten
  #7 (permalink)  
Alt 23-10-2007, 22:48
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.722
Kropff befindet sich auf einem aufstrebenden Ast
Standard

zeig doch mal den js-code oder ein online-beispiel. bei solchen dingen zicken die browser gerne herum.

gruß
peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #8 (permalink)  
Alt 23-10-2007, 23:09
Seggl-hoch-drei
 Registrierter Benutzer
Links : Onlinestatus : Seggl-hoch-drei ist offline
Registriert seit: Sep 2007
Beiträge: 312
Seggl-hoch-drei ist zur Zeit noch ein unbeschriebenes Blatt
Standard

online zu sehen auf
http://www.virtual-meetings.de/rebuild/
(Profil editieren), allerdings ist dafür eine Registrierung notwendig...

Der komplette Code wäre ziemlich viel, hier nur mal die Stelle für die Speicherung in das Textfeld. (Ich hab jetzt ne Browserweiche als Notlösung)

Code:
//browserweiche
var IE = null;
var FF = null;

if(window.XMLHttpRequest)
{ FF = true; }
else if(window.ActiveXObject)
{ IE = true; }

for(x = 0; x < textareas.length; x++)
	{
		var textfeld = document.getElementById(textareas[x]);		
		textfeld.innerHTML = "<textarea id='"+textareas[x]+"_edit' class='input_big' rows='6' cols='55'></textarea>";	
		
		if(IE) {	
		document.getElementById(textareas[x]+"_edit").innerText = old_textareas[textareas[x]];	
		} else {
		document.getElementById(textareas[x]+"_edit").innerHTML = old_textareas[textareas[x]]; }
				
	}
Oder hier die ganzen JS-Dateien:

http://www.virtual-meetings.de/rebuild/profil.js (Die wichtigste, in edit_profile() steht der Code zum Einfügen drin...)
http://www.virtual-meetings.de/rebuild/dyn.js (Ajax)
http://www.virtual-meetings.de/rebuild/javascript.js (Sonstiges)

Danke für die Hilfe ;-)
Mit Zitat antworten
  #9 (permalink)  
Alt 23-10-2007, 23:32
Seggl-hoch-drei
 Registrierter Benutzer
Links : Onlinestatus : Seggl-hoch-drei ist offline
Registriert seit: Sep 2007
Beiträge: 312
Seggl-hoch-drei ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ich glaubs echt nicht
kaum geht das eine, geht das andere nicht mehr!
die Umlaute werden nichtmehr dargestellt. auch nach html_entitity_decode nicht
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:20 Uhr.