Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PHP - Eingabe von kyrillischen Zeichen verbieten

Frage Entwicklung PHP

Mitglied: dourden

dourden (Level 1) - Jetzt verbinden

12.01.2007, aktualisiert 13.01.2007, 7072 Aufrufe, 2 Kommentare

Hallo,

Ich habe auf meiner webseite einen formular, wo sich user für einen newsletter registrieren können. Die seite ist eine reine HTML seite - erst wenn das formular ausgefühlt ist, kommt PHP ins spiel. Da ich von PHP wenig ahnung habe und hier einen vorgefertigeten script verwende, den ich etwas modifiziert habe, hierzu eine frage:

Ich würde gerne den besuchern die eingabe von kyrillischen buchstaben verbieten, da das meine datenbank durcheinander bringt. Wie kann ich das in meinem fall am sinnvollsten lösen?
Am besten wäre natürlich, wenn kyrillische buchstaben schon beim tippen "abgefangen" werden.
So sieht mein code fürs formular aus:

01.
 <form action="newsletter/index.php" method="post" target="_blank"> 
02.
            <tr> 
03.
              <td width="66"><strong class="text-main">Anrede:</strong></td> 
04.
              <td width="99"><input type="radio" name="anrede" value="Frau" /> 
05.
                <span class="text-main">Frau</span>       </td> 
06.
              <td width="99"><input type="radio" name="anrede" value="Herr" /> 
07.
                <span class="text-main">Herr</span> 
08.
                </option></td> 
09.
            </tr> 
10.
            <tr> 
11.
              <td><strong class="text-main">Vorname:</strong></td> 
12.
              <td colspan="2"><input type="text" name="vorname" size="25" maxlength="150" /></td> 
13.
            </tr> 
14.
            <tr> 
15.
              <td><strong class="text-main">Nachname:</strong></td> 
16.
              <td colspan="2"><input type="text" name="nachname" size="25" maxlength="150" /></td> 
17.
            </tr> 
18.
            <tr> 
19.
              <td><strong class="text-main">eMail:</strong></td> 
20.
              <td colspan="2"><input type="text" name="email" size="25" maxlength="150" /></td> 
21.
            </tr> 
22.
            <tr> 
23.
              <td rowspan="2"><strong class="text-main"><strong>Verfahren:</strong></strong><br /> 
24.
                  <br /></td> 
25.
              <td height="21" colspan="2"><input name="option" type="radio" value="anmelden" checked="checked" /> 
26.
                <span class="text-main">Anmelden</span>  </td> 
27.
            </tr> 
28.
            <tr> 
29.
              <td height="21" colspan="2"><input type="radio" name="option" value="abmelden" /> 
30.
</span><span class="text-main">Abmelden</span></td> 
31.
            </tr> 
32.
            <tr> 
33.
              <td height="37"> </td> 
34.
              <td colspan="2"><input name="submit" type="submit" value="Daten bestätigen" /></td> 
35.
            </tr> 
36.
          </form>
Wie kann ich das realisieren?
Vielen Dank.
MODERATOR (28.04.2007):
Beitrag auf "GELÖST" gestellt.

Dani
Mitglied: Guenni
13.01.2007 um 07:29 Uhr
@dourden

Hi,

die folg. JavaScript-Funktion überprüft eine Eingabe auf korrekte Zeichen
des Alphabets, sowie Umlaute und ß:

Erlaubt --> ...muster=/[A-Za-zÄÖÜäöüß]/;...

Ziffern, @, (), \, [], ., =, sind nicht erlaubt:

Nicht erlaubt --> ... muster=/[0-9]|[@\(\)\[\]\.=]/;...

Die Liste der nicht erlaubten Zeichen kannst du vielleicht durch deine
n.e. kyrillischen Zeichen ersetzen.

01.
<html> 
02.
<head> 
03.
<title>Untitled</title> 
04.
<script type="text/javascript"> 
05.
<!-- 
06.
function check_eingabe(){ 
07.
 ok=false; 
08.
 muster=/[A-Za-zÄÖÜäöüß]/; //Prüfen, ob Buchstaben eingegeben wurden 
09.
 test=muster.exec(document.formular.textfeld.value); 
10.
 if(test){ok=true;} // Wenn ja, dann O.K. 
11.
 muster=/[0-9]|[@\(\)\[\]\.=]/; // Prüfen, ob zusätzlich Ziffern, @-Zeichen,  
12.
 // Klammern, Punkt oder Gleichheitzeichen eingegeben wurden 
13.
 // Die Liste verbotener Zeichen kann einfach erweitert werden. 
14.
 // Zu beachten ist nur, dass bestimmte Zeichen durch den Backslash maskiert(\(,\.,\])  
15.
 // werden müssen, da sie sonst nicht als das Zeichen selber interpretiert werden. 
16.
 // Einfach mal ausprobieren, allzu gut kenn&acute;ich mich mit reg.Ausdrücken nicht aus. 
17.
 test=muster.exec(document.formular.textfeld.value); 
18.
 if(test){ok=false;}// Wenn ja, dann nicht O.K. 
19.
 if(!ok || document.formular.textfeld.value=="Bitte korrekt ausfüllen!"){ 
20.
  document.formular.textfeld.value="Bitte korrekt ausfüllen!"; 
21.
  document.formular.textfeld.select(); 
22.
 return false; 
23.
24.
return true; 
25.
26.
function check_java(){ 
27.
 if (!navigator.javaEnabled()) { 
28.
  alert("Zum korrekten Ausführen der Seite muß JavaScript eingeschaltet sein."); 
29.
30.
 return true; 
31.
32.
// --> 
33.
</script> 
34.
</head> 
35.
<body onload="check_java()"> 
36.
<form action="eingabe.html" name="formular" onsubmit="return check_eingabe()"> 
37.
<input type="text" name="textfeld"> 
38.
<input type="submit" value="Senden"> 
39.
</form> 
40.
</body> 
41.
</html>
Zusätzlich wird noch geprüft, ob JavaScript zum korrekten
Ausführen der Seite aktiviert ist.

Grüße
Günni
Bitte warten ..
Mitglied: dourden
13.01.2007 um 15:10 Uhr
Hi Günni,
Vielen dank für den code, hat sehr geholfen und das ganze funktioniert jetzt.

Grüße
Andrej
Bitte warten ..
Ähnliche Inhalte
C und C++
C-sharp ZIP-Ordner an PHP senden (9)

Frage von Yanmai zum Thema C und C ...

Linux
gelöst Php redis an Socket binden? (2)

Frage von FA-jka zum Thema Linux ...

Debian
gelöst Plesk php-fpm Fehler (7)

Frage von sebastian2608 zum Thema Debian ...

Neue Wissensbeiträge
Windows 10

Plattformdienst für unbekannte Geräte (7023)

Tipp von KMUlife zum Thema Windows 10 ...

Administrator.de Feedback

Umgangsformen auf der Seite

(7)

Information von Frank zum Thema Administrator.de Feedback ...

Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

(11)

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst Dir tc Befehl unter Windows 10 macht Probleme (14)

Frage von sugram zum Thema Batch & Shell ...

Windows Server
Windows Server Komplettspiegelung (13)

Frage von pdiddo zum Thema Windows Server ...

Windows Server
Windows Server 2016 RDS Remoteapp Anzeigefehler (11)

Frage von qlnGenius zum Thema Windows Server ...