php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 02.06.2006, 09:12  
Benutzer
 
Registriert seit: 02.06.2006
Beiträge: 53
TailerD
Standard Die Sache mit den Sonderzeichen nach und vor Formularprüfung

Moin Moin,

ihr wisst bestimmt die Lösung.

Also ich versuchs mal kurz:

1. ) Formularansicht;
2. ) Mittels $_GET in einen anderen Modus um erneutes Eintragen in die Datenbank zu verhindern.

3. ) Mit $_Post werden Daten übertragen in Formular 2 bzw. in den Modus aus Punkt 2. nach dem Übertragen werden die Daten in der Session gespeichert und die PostVariablen unset gemacht.
Code:
 $_SESSION["feld1"]=$_POST['feld1'];    unset($_POST['feld1']);

 if ((htmlentities($_SESSION['feld1'],ENT_QUOTES) != $_SESSION['feld1']) ){
$falscherFehler['feld1']= "
<font class='false'>Keine Sonderzeichen.</font>";
}
Dann komt bei mit das Formular und wenn kein Fehler werden die Daten eingefügt.

4.) In Punkt 3 wurden die Daten geprüft auf sonderzeichen. Nun ist aber ä ü ö ß ... und wie sie alle heissen, auch Sonderzeichen. Ich möchte nun das zumindest die 4 genannten nicht als Sonderzeichen behandelt werden.

Ich wollte die immer umwandeln also wenn jemand Dörte eingibt das dann das ö nicht als Sonderzeichen angesehen wird.

Und mir ist nich klar wo ich das jetzt zulassen kann. str_replace() hat net gefunzt. Reguläre Ausdrücke ? Oder
Code:
strtr($_SESSION['feld1'], "ä", "a")
geht nicht

Aber wo soll ich das jetzt irgendwie will das nich gehen und ich hab das Gefühl das ist der falsche Ansatz.

Kann mir jemand auf die Sprünge helfen?
TailerD ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 02.06.2006, 09:31  
Erfahrener Benutzer
 
Registriert seit: 11.07.2004
Beiträge: 269
function
function eine Nachricht über ICQ schicken
Standard

versuch es doch mal mit preg_match
PHP-Code:
if(preg_match("/^[A-Za-Z0-9äöü]"$_SESSION['feld1'])) 
__________________
Es ist ein großer Trost, andere dort scheitern zu sehen, wo man selbst gescheitert ist. (William Somerset Maugham)
function ist offline  
Alt 02.06.2006, 09:43  
Benutzer
 
Registriert seit: 02.06.2006
Beiträge: 53
TailerD
Standard

Danke.

Da sagt er ne Warniung von -- No ending delimiter '/' --
TailerD ist offline  
Alt 02.06.2006, 09:52  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Das heißt so viel wie "Nicht beendeter Begrenzer". OK, bei function war wohl nen Tippfehler drin ^^
PHP-Code:
if(preg_match("/^[A-Za-Z0-9äöü]/"$_SESSION['feld1'])) 
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
Alt 02.06.2006, 09:53  
Benutzer
 
Registriert seit: 02.06.2006
Beiträge: 53
TailerD
Standard

Kuck mal hier. http://regexp-evaluator.de/tutorial-backslash.html

Ich versteh da aber irgendwie nur Bahnhof. Verstehst du das function
TailerD ist offline  
Alt 02.06.2006, 09:56  
Benutzer
 
Registriert seit: 02.06.2006
Beiträge: 53
TailerD
Standard

Zitat:
Zitat von KingCrunch
Das heißt so viel wie "Nicht beendeter Begrenzer". OK, bei function war wohl nen Tippfehler drin ^^
PHP-Code:
if(preg_match("/^[A-Za-Z0-9äöü]/"$_SESSION['feld1'])) 
Ja das dachte ich auch nur dann kam

--Compilation failed: range out of order in character class at offset 7 i--
TailerD ist offline  
Alt 02.06.2006, 10:14  
Benutzer
 
Registriert seit: 02.06.2006
Beiträge: 53
TailerD
Standard

Hat vielleicht jemand ne Idee wie ich

ü ä ö in einem Formular zulassen kann, von mir aus auch ohne Reguläre Ausdrücke?

Hauptsache es geht nich.
TailerD ist offline  
Alt 02.06.2006, 10:16  
XLB
Erfahrener Benutzer
 
Registriert seit: 31.07.2005
Beiträge: 1.126
PHP-Kenntnisse:
Fortgeschritten
XLB
Standard

Zitat:
range out of order in character class
a-Z


PHP-Code:
<?php

   
if(preg_match("/[^a-zA-ZÖöÄäÜüß]/",$_SESSION['feld1']))

?>
... prüft, ob andere Zeichen, ausser den "akzeptierten" im String enthalten sind.
XLB ist offline  
Alt 02.06.2006, 11:04  
Benutzer
 
Registriert seit: 02.06.2006
Beiträge: 53
TailerD
Standard

Ok Cool. geht. Danke

Ich hab das jetzt so gemacht für die dies nicht wissen.

PHP-Code:
if ((htmlentities($_SESSION['feld1'],ENT_QUOTES) != $_SESSION['feld1'
&& 
preg_match("/[^a-zA-ZÖöÄäÜüß]/",$_SESSION['feld1']) ) ){
    
$fehler['feld1']= "<font class='false'>Keine Sonderzeichen.</font>";

Ich hab aber noch ne Frage.

wisst ihr wie ich das - ; * auch noch ausschliessen kann?

Welche Zeichen sollte man noch ausschliessen wenn es um die Sicherheit geht? Die Hochkomma und Slashes sind schon ausgeschlossen.
Denkt ihr das das Formular habwegs sicher ist mit dem hier gezeigten?
TailerD ist offline  
Alt 02.06.2006, 11:37  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

preg_match("/[^a-zA-ZÖöÄäÜüß\-;\*]/",$_SESSION['feld1'])
Zergling-new ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Ajax und Sonderzeichen? GSJLink HTML, Usability und Barrierefreiheit 1 11.11.2006 14:36
Sonderzeichen mit Semikolon in einer Abfrage PHP Tipps 2006 17 04.02.2006 11:34
Wikipedia, Sonderzeichen und file_get_contents(); pb PHP Tipps 2006 2 20.01.2006 20:02
[Erledigt] Problem mit Sonderzeichen PHP -&gt; MySQL -&gt; HTML PHP Tipps 2007 18 07.12.2005 15:23
Liste nach Buchstaben und Sonderzeichen (!) sortiert odaa PHP-Fortgeschrittene 8 11.10.2005 16:26
sonderzeichen filtern/suchen socke PHP Tipps 2005-2 8 22.09.2005 07:01
[Erledigt] Sonderzeichen: &amp;#8805; Datenbanken 2 19.09.2005 16:54
Login Probleme mit Sonderzeichen im Nick PHP Tipps 2005-2 11 21.08.2005 16:54
Probleme mit Sonderzeichen... Datenbanken 1 02.08.2005 23:37
Sonderzeichen aus einem großen Text entfernen PHP Tipps 2005 4 25.04.2005 16:51
Sonderzeichen in der Tabelle Mutatos Datenbanken 4 17.03.2005 15:28
Sonderzeichen verbieten PHP Tipps 2005 16 28.02.2005 08:36
mit html sonderzeichen sortieren Datenbanken 3 16.02.2005 15:25
Sonderzeichen über $_GET Calexico PHP Tipps 2005 1 10.02.2005 17:40
[Erledigt] sonderzeichen im browser? PHP-Fortgeschrittene 1 12.10.2004 14:29

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
$_session umlaute, formular welche zeichen erlauben, php formular nur reguläre ausdrücke zulassen, formular keine ö ä ü erlauben, sonderzeichen in formularen behandlung, ein bestimmtes zeichen in html formular nicht zulassen, html formularfeld zeichen nicht erlauben, umlaute in formular mit php zulassen, sonderzeichen im formular php verbieten, sonderzeichen in formular zulassen, formular php && preg_match(\/[^a-za-zÖöÄäÜüß]/\, php email formular sonderzeichen verbieten, sonderzeichen formular, php formular sonderzeichen nach prüfung, php pregmatch für formular sonderzeichen verbieten, formular php sonderzeichen zulassen, sonderzeichen im formular erlauben, mit java ä ü ö in einem formular verbieten, umlaute in formular php zulassen, php erstes zeichen nach sonderzeichen

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:55 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.