php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 01-12-2007, 09:37
AgentCyber
 Newbie
Links : Onlinestatus : AgentCyber ist offline
Registriert seit: Jul 2001
Ort: Germany
Beiträge: 88
AgentCyber ist zur Zeit noch ein unbeschriebenes Blatt
Post Polnische od. Sonderzeichen

Hallo,

ich hab da mal folgende Frage:

Ich möchte gerne die Zeichen die in polnisch diese überstriche etc haben im PHP Script abfangen. Bei deutschen Zeichen klappt dies wundervoll. Ich hab mir dazu so eine Funktion geschrieben. Jedoch gibts nun ein Problem. Wenn ich in dem Script diese komischen Sonderzeichen einfüge in ereg_replace("....") dann zeigt er das nur kurz an und speichert diese datei nicht richtig. Bei nächsten öffnen zeigt er das sonderzeichen bei windows nicht an. Nun das nächste Problem wie soll ich bei ereg_replace dieses Zeichen angeben wenn das von meinem Win automatisch verändert wird ...

Ich danke euch 1000 x schonmal für eure Hilfe...

Hier meine Funktion:
PHP-Code:
     function parseUTF($lang,$text) {
         
        if (
$lang=="de") {
        
// deutsch
        
$text ereg_replace("ö","ö",$text);    // ö
        
$text ereg_replace("Ö","Ö",$text);    // Ö
        
$text ereg_replace("ä","ä",$text);    // ä
        
$text ereg_replace("Ä","Ä",$text);    // Ä
        
$text ereg_replace("ü","ü",$text);    // ü
        
$text ereg_replace("Ü","Ü",$text);    // Ü        
        
$text ereg_replace("ß","ß",$text);    // ß    
        
return $text;    
        }
        
        
     } 
__________________
Gruß , Ag3nt
Mit Zitat antworten
  #2 (permalink)  
Alt 01-12-2007, 09:47
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Du brauchst einen UTF8-fähigen Editor. Womit schreibst du deine Scripte zur Zeit?
Mit Zitat antworten
  #3 (permalink)  
Alt 01-12-2007, 09:58
AgentCyber
 Newbie
Links : Onlinestatus : AgentCyber ist offline
Registriert seit: Jul 2001
Ort: Germany
Beiträge: 88
AgentCyber ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von onemorenerd
Du brauchst einen UTF8-fähigen Editor. Womit schreibst du deine Scripte zur Zeit?
Welcher Editor wäre das den?

Ich arbeite zur Zeit mit active State Komodo 4. Habs aber auch mit NOTEPAD oder WRITE versucht klappt alles nicht

PS: Hier die Sonderzeichen (http://unicode.e-workers.de/polnisch.php)
__________________
Gruß , Ag3nt

Geändert von AgentCyber (01-12-2007 um 10:04 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 01-12-2007, 10:02
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Notepad: Datei > Speichern unter > Codierung > UTF-8.

Jeder vernünftige Editor kann das. Eine ernstzunehmende IDE erst recht. Manchmal ist es im Speichern-Dialog versteckt wie bei Notepad, manchmal in den Programmoptionen oder den Projektsettings. Wie auch immer, ein Blick in die Hilfe des jeweiligen Programms sollte helfen.

Ich empfehle natürlich einen Editor, der wenigstens Syntaxhighlighting macht. Notepad ist was für Masochisten.

Btw: Ich kenne die polnischen Zeichen, vielen Dank. Aber du weißt scheinbar nicht, was UTF8 ist. Mach dich schlau, damit du überhaupt weißt, was du da machst!

Geändert von onemorenerd (01-12-2007 um 10:07 Uhr)
Mit Zitat antworten
  #5 (permalink)  
Alt 01-12-2007, 10:07
AgentCyber
 Newbie
Links : Onlinestatus : AgentCyber ist offline
Registriert seit: Jul 2001
Ort: Germany
Beiträge: 88
AgentCyber ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von onemorenerd
Notepad: Datei > Speichern unter > Codierung > UTF-8.

Jeder vernünftige Editor kann das. Eine ernstzunehmende IDE erst recht. Manchmal ist es im Speichern-Dialog versteckt, manchmal in den Programmoptionen oder den Projektsettings. Wie auch immer, ein Blick in die Hilfe des jeweiligen Programms sollte helfen.
Das klappt leider nicht!

Ergebnis:
PHP-Code:
                if ($lang=="pl") {
        
// pl
        
$text ereg_replace("A","Ą",$text);    // ö <-------------
        
$text ereg_replace("Ö","&Ouml;",$text);    // Ö
        
$text ereg_replace("ä","&auml;",$text);    // ä
        
$text ereg_replace("Ä","&Auml;",$text);    // Ä
        
$text ereg_replace("ü","&uuml;",$text);    // ü
        
$text ereg_replace("Ü","&Uuml;",$text);    // Ü        
        
$text ereg_replace("ß","&szlig;",$text);    // ß    
        
return $text;    
        } 

Er schreibt nur normales A statt dem A´ weist was ich mein? Schau mal den Link: http://unicode.e-workers.de/polnisch.php erstes Zeichen.

Aber ich hab nun folgendes geschafft:
http://www.editpadpro.com/editpadlite.html

Dieser Editor kann UTF 8 und das scheint zu klappen nur muss ich die Funktion nun in andere Scripts schieben, damit der rest auch noch Deutsch versteht Ich probier es mal aus.
__________________
Gruß , Ag3nt

Geändert von AgentCyber (01-12-2007 um 10:11 Uhr)
Mit Zitat antworten
  #6 (permalink)  
Alt 01-12-2007, 10:12
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Zitat:
Original geschrieben von AgentCyber
Er schreibt nur normales A statt dem A´ weist was ich mein?
Nein, weiß ich nicht. Heißt "er schreibt", dass du gar kein Ą eingeben kannst? Dann geh zu Google und suche nach "Eingabegebietsschemaleiste".
Mit Zitat antworten
  #7 (permalink)  
Alt 01-12-2007, 10:20
AgentCyber
 Newbie
Links : Onlinestatus : AgentCyber ist offline
Registriert seit: Jul 2001
Ort: Germany
Beiträge: 88
AgentCyber ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Naja im momment läufts gut.

Hab die funktion ausgebaut:

PHP-Code:
     function parseUTF($lang,$text) {
         if (
$lang=="de") {         
            include(
"utf/utf-de.inc.php");
         }
         if (
$lang=="pl") {         
            include(
"utf/utf-pl.inc.php");
         }
     return 
$text
und nun lade ich die einzelnen ZEICHEN z.B. pl:

PHP-Code:
<?php 
        $text 
ereg_replace("Ą","Ą",$text);    
        
$text ereg_replace("ą","ą",$text);    
        
$text ereg_replace("Ć","Ć",$text);    
        
$text ereg_replace("ć","ć",$text);    
        
$text ereg_replace("Ę","Ę",$text);    
        
$text ereg_replace("ę","ę",$text);            
        
$text ereg_replace("Ł","Ł",$text);
        
$text ereg_replace("ł","ł",$text);    
        
$text ereg_replace("Ń","Ń",$text);    
        
$text ereg_replace("?","&Uuml;",$text);            
        
$text ereg_replace("?","&szlig;",$text);
        
$text ereg_replace("?","&Auml;",$text);    
        
$text ereg_replace("ü","&uuml;",$text);    
        
$text ereg_replace("?","&Uuml;",$text);            
        
$text ereg_replace("?","&szlig;",$text);        
?>
PS: DAS FORUM ZEIGT DAS AUCH NICHT KORREKT AN aber hab ja LINK gepostet zur Seite von den Sonderzeichen da geh' ich grad die reihe durch

Zumindest zeigt er die Sonderzeichen im Editor an. Und wenn ich sie lade kommen komische Zeichen aber immerhin scheint es zu klappen *hoff*...

wollen wir gleich mal in action sehen



Mal schaun obs gleich klappt
__________________
Gruß , Ag3nt
Mit Zitat antworten
  #8 (permalink)  
Alt 01-12-2007, 10:36
AgentCyber
 Newbie
Links : Onlinestatus : AgentCyber ist offline
Registriert seit: Jul 2001
Ort: Germany
Beiträge: 88
AgentCyber ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das ist schwul.... also es klappt nicht wie oben beschrieben

doofe Sonderzeichen
__________________
Gruß , Ag3nt

Geändert von AgentCyber (01-12-2007 um 10:41 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 01-12-2007, 10:41
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

Was rödelst du da mit ereg_replace rum?
1. Das ist lahm und veraltet! Auch wird es mit PHP6 aus der Standardkonfiguration rausfliegen.
2. völlig unnötig an der Stelle strtr() sollte dicke reichen. Aber vorsicht, beide sind nicht uneingeschränkt multibyte fähig.

Wenn du konsequent alles auf utf-8 umgestellt hast:
1. Header Charset
2. MetaHead Charset
3. Formular
4. DB Verbindung
Dann solltest du dir eigendlich jede Art von Konvertierung sparen können. Alle modernen beteidigten Programme, haben damit keine Probleme.
Nur der PHP Quelltext selber, sollte in einem 8 Bit Zeichensatz abgefasst werden. Darin haben Umlaute und sonstige, von 7Bit ASCII abweichende Zeichen, nichts verloren.
Erst mit PHP6 wird eine umfassende UTF8 Untestützung eingeführt. (hoffendlich)
__________________
Wir werden alle sterben
Mit Zitat antworten
  #10 (permalink)  
Alt 01-12-2007, 10:44
AgentCyber
 Newbie
Links : Onlinestatus : AgentCyber ist offline
Registriert seit: Jul 2001
Ort: Germany
Beiträge: 88
AgentCyber ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das Problem wieso ich mir die Mühe mache ist folgende:

Ich arbeite an einem Admin Panel. Mit Texteingabe etc.

Das Panel ist MULTILANGUAGE. Deutsch klappt ja hervorragend, Englisch auch aber Polnisch nicht. Daher könnte ich ja auch alle Texte mit '&Ou....' Codes statt den Sonderzeichen füllen. Was aber ist wenn der Kunde den Text in polnisch eingibt? Das wird doch nur Theater und dafür soll die Funktion hinhalten. Alle Texte die der Kunde auf polnisch schreibt soll in die UTF Codes in HTML umgwandelt werden. Später werden diese in MySQL gespeichert. Die Ausgabe wird dann später sauber formatiert sein

IM HEADER STEHT BEREITS: UTF8 drin Und wenn ich das nicht mit diesen &codes mache, dass sind nur ? auf der Page...

Wenn jemand ne bessere Lösung hat immer her damit ...
__________________
Gruß , Ag3nt
Mit Zitat antworten
  #11 (permalink)  
Alt 01-12-2007, 10:48
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

Was genau, hast du an meinem 4 Punkte Programm nicht verstanden?
__________________
Wir werden alle sterben
Mit Zitat antworten
  #12 (permalink)  
Alt 01-12-2007, 10:49
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Zitat:
Original geschrieben von AgentCyber
DAS FORUM ZEIGT DAS AUCH NICHT KORREKT AN
Schrei nicht rum! Das Forum zeigt an, was du eingibst. Wie gesagt, Google > Eingabegebietsschemaleiste.
Allerdings hat combie Recht, du sparst dir viel Arbeit, wenn du deine Applikation komplett auf UTF8 umstellst.
Mit Zitat antworten
  #13 (permalink)  
Alt 01-12-2007, 11:07
AgentCyber
 Newbie
Links : Onlinestatus : AgentCyber ist offline
Registriert seit: Jul 2001
Ort: Germany
Beiträge: 88
AgentCyber ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich wollt doch nicht schreien. GROSSSCHREIBEN ist doch nicht immer gleich schreien. Wollte nur das ihr das mitliest.

Ok ich schreib nun nicht mehr groß.

So ich habs nun versucht alles in UTF und in die Quellcode die Zeichen einzugeben ohne die &cod sondern direkt die sonderzeichen. Editor zeigt alles schön an. Speichert auch ordentlich. Aber HTML ausgabe klappt nicht immer noch ? Symbole .....

Kann mir jemand nen Tipp geben?

Thx schonmal

UPDATE: Ich glaub ich habs:

<head>
<meta http-equiv="content-type" content="text/html;charset=ISO-8859-2" />

hab ich nun eingefügt und er zeigt Zeichen in Polnisch an.

Nun bau ich einfach ne IF Abfrage und ersetze immer die content-type.

Mal ne Frage nebenbei. Wenn ein Kunde nun etwas in die Textbox polnisch eingibt. Meint ihr ich muss da bei MySQL irgendwas wieder umstellen oder kann das so bleiben?
__________________
Gruß , Ag3nt

Geändert von AgentCyber (01-12-2007 um 11:10 Uhr)
Mit Zitat antworten
  #14 (permalink)  
Alt 01-12-2007, 11:16
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Stell einfach alles auf UTF8 um, auch die DB.
Das if() ist Quark, gib immer den Meta-Header aus und gut ist.
Mit Zitat antworten
  #15 (permalink)  
Alt 01-12-2007, 11:20
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

@AgentCyber
Du machst dir das Leben unnütz schwer....
Anstatt dir mal richtig vor Augen zu führen, was da passiert, stocherst du im Nebel rum..

Wie kommst du auf die Idee Texte in UTF8 zu erfassen und dann zu meinen, sie werden in ISO-8859-2 richtig angezeigt? Das ist doch ein Witz!

Ich gebe auf...
__________________
Wir werden alle sterben
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

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

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