phpbuddy.eu
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 10.10.2008, 00:49   #1
TP-Supporter
 
Benutzerbild von Sascha79
 
Registriert seit: Jul 2008
Ort: Tübingen
Sascha79 bringt sich richtig einSascha79 bringt sich richtig ein

Sonderzeichen (Leerzeichen) entfernen


Hi,

ich bin gerade dabei rumzutüfteln wie ich Sonderzeichen aus meinem Formular entfernen kann.

Meine erste Idee war...
PHP-Code:
$zeichen "test"
   
   if (
$_POST preg_match( ("|^(a-zA-Z0-9)|"$zeichen) )) 
   { 
   echo 
"Es dürfen keine Sonderzeichen angegeben werden!"
   } 
...aber da gehen alle Daten verloren. Denn so wie es aussieht kann ich _POST nicht preg_match zuweisen. Warum, habe ich noch nicht ganz verstanden. Vielleicht kanns mir ja jemand erklären.

Dann als nächstes habe ich es mal so ausprobiert.
PHP-Code:
if (!preg_match("|^([a-zA-Z0-9])+$|"$_POST['submitbutton'])) 
   {
   echo 
"Es dürfen keine Sonderzeichen angegeben werden!";
   } 
Aber hier werden leider alle Sonderzeichen an die DB übergeben und das echo wird nicht übergeben.

Was ich brauche sind lediglich hir und da ein paar nähere Erläuterungen um die Materie besser zu verstehen. Ich habe mir das mit Hilfe vom Handbuch zusammengewurstelt, da hab ich das preg_match entdeckt. In der Theorie ist das alles ja ganz logisch nur braucht man für die Praxis halt auch noch mehr Erfahrung.
__________________
Das Leben ist schön -
Lehren ist die schönste Methode zu lernen.
Sascha79 ist offline   Mit Zitat antworten


Alt 10.10.2008, 02:02   #2
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
1) warum willst Du Sonderzeichen entfernen, hast Du Probleme damit? Dann machst Du was falsch
2) Wo willst Du die entfernen? Du kannst das nicht mit dem gesamten Array machen
3) denk mal an den User - ich hätte schnell die Nase voll und würde nichts mehr ausfüllen
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Alt 10.10.2008, 02:45   #3
TP-Supporter
 
Benutzerbild von Sascha79
 
Registriert seit: Jul 2008
Ort: Tübingen
Sascha79 bringt sich richtig einSascha79 bringt sich richtig ein
O.K. Danke für den Tip.

Aber ich sollte zumindest dort wo die Telefonnummer eingegeben wird Leerzeichen entfernen, denn alles was nach einem Leerzeichen steht wird nicht an die Datenbank übertragen. Oder muss ich das in der DB ändern? Ich habe hier als Typ "int" angegeben.
__________________
Das Leben ist schön -
Lehren ist die schönste Methode zu lernen.
Sascha79 ist offline   Mit Zitat antworten
Alt 10.10.2008, 09:08   #4
TP-Veteran
 
Benutzerbild von Guin
 
Registriert seit: Nov 2006
Ort: Lübeck
Guin hilft, wo's gehtGuin hilft, wo's gehtGuin hilft, wo's geht
$_POST = preg_match( ("|^(a-zA-Z0-9)|", $zeichen)
Rückgabewert?
http://de2.php.net/preg_match


preg_match("|^([a-zA-Z0-9])+$|", $_POST['submitbutton'])
Auch hier mal gucken, was preg_match zurückgibt und ist in $_POST['submitbutton'] überhaupt der Text drin?

Genreller Tip zusätzlich zu steffenk
Wenn du dich nicht mit RegEx auskennst, nimm lieber eine normale "Suchfunktion". Das ist Resourcenschonender.
Als Beispiel die hier:
http://de2.php.net/manual/de/function.stripos.php

EDIT

Zitat:
Aber ich sollte zumindest dort wo die Telefonnummer eingegeben wird Leerzeichen entfernen
$telefon = strtr( $telefon, " ", "");
Guin ist offline   Mit Zitat antworten
Alt 11.10.2008, 05:45   #5
TP-Supporter
 
Benutzerbild von Sascha79
 
Registriert seit: Jul 2008
Ort: Tübingen
Sascha79 bringt sich richtig einSascha79 bringt sich richtig ein
Ich danke dir vielmals. Hat wunderbar geklappt.

Aber gibt es auch eine Möglichkeit damit die Leerzeichen mit in DB übertragen werden???
Ich habe die Zeile mit der Telefonnummer

`Telefon` int(15) default NULL,

so ausgeführt, funktioniert leider nicht mit Leerzeichen.

wenn ich es so mache...

`Telefon` varchar(15) default NULL,

...dann klappt es. Ich dachte aber das für Zahlen "int" verwendet wird.
__________________
Das Leben ist schön -
Lehren ist die schönste Methode zu lernen.

Geändert von Sascha79 (11.10.2008 um 06:55 Uhr).
Sascha79 ist offline   Mit Zitat antworten
Alt 11.10.2008, 09:19   #6
TP-Veteran
 
Benutzerbild von Guin
 
Registriert seit: Nov 2006
Ort: Lübeck
Guin hilft, wo's gehtGuin hilft, wo's gehtGuin hilft, wo's geht
$nummer = "123 123 123";
//Das ist ein String.

$nummer = 123;
//Das ist eine Zahl.

// $nummer = 123 123; //das gibt einen Pharse Error.

varchar ist okay. Bei der Länge musst du überlegen, was sinnvoll ist. Telefonummern können länger als 15 Zeichen sein.

Dann kann der Kunde auch 040/123456 eingeben.
Oder +4940123345
Oder 049 40 123456 ...
Guin ist offline   Mit Zitat antworten
Alt 11.10.2008, 10:42   #7
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
du kannst das auch so ganz einfach eroieren:
int = zahl, telefonnummer = ?
meine Telefonnummer + Deine Telefonnummer = ?

Zahlen also nur zum Rechnen.
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Sonderzeichen (Leerzeichen) entfernen [PHP] Sonderzeichen (Leerzeichen) entfernen
« MySQL-Anweisung funktioniert nur mit Datenbankangabe | //Validation »

Stichworte
php, preg_match

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
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
Kurzes Leerzeichen strauberry Druckstudio 4 13.10.2006 17:11
mehr als ein Leerzeichen entfernen fettmme Traum-Dynamik 7 22.04.2003 22:50
fehlendes Leerzeichen in PS6 Blue Muck Photoshop 1 13.02.2003 16:19
geschützte leerzeichen in ps? papa_sting Photoshop 7 04.02.2003 19:30
Leerzeichen Max Dreamweaver 5 11.02.2002 12:50


Alle Zeitangaben in WEZ +2. Es ist jetzt 08:49 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67