login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Controle functie korter maken.

Offline JBke - 07/04/2007 19:38
Avatar van JBkePHP gevorderde Hey,

Ik zou graag een controle uitvoeren op een ingegeven veld en daarbij het aantal foutieve characters willen tonen. Weet iemand hoe ik dit korter kan doen? Dit lijkt me nogal omsalschtig. Ik heb 2 verschillende controles nodig: 1 indien Helemaal niets anders dan cijfers of letters mag gebruikt worden en en 1 waar wel ' - _ mag inkomen zoals in namen daarbij moet hij dus weergeven hoeveel foutieve er zijn.

nu gebruik ik dit:

  1. <?
  2. /********************************************************************
  3.  * Functie: check_Foutieve_Characters() *
  4.  * Parameters: *
  5.  * Doel: nazien of er foutieve characters voorkomen in de velden *
  6.  * Aanroep: check_Foutieve_Characters(); *
  7.  ********************************************************************/
  8. function check_Foutieve_Characters()
  9. {
  10. global $numerieke_velden, $email_velden, $datum_velden, $formulier_waardes, $formulier, $alles_toegelaten, $niets_toegelaten;
  11. $fout = 0;
  12. foreach($formulier as $veld) {
  13. $aantal = 0;
  14. $inhoud = html_entity_decode($formulier_waardes[$veld]);
  15. if(!in_array($veld, $numerieke_velden) && !in_array($veld, $email_velden) && !in_array($veld, $datum_velden) && !in_array($veld, $alles_toegelaten)) {
  16. if(preg_match("~[\"*$<>{}()\[\]§!]~", $inhoud)) {
  17. $aantal += substr_count($inhoud, "*");
  18. $aantal += substr_count($inhoud, "$");
  19. $aantal += substr_count($inhoud, "<");
  20. $aantal += substr_count($inhoud, ">");
  21. $aantal += substr_count($inhoud, "{");
  22. $aantal += substr_count($inhoud, "}");
  23. $aantal += substr_count($inhoud, "(");
  24. $aantal += substr_count($inhoud, ")");
  25. $aantal += substr_count($inhoud, "[");
  26. $aantal += substr_count($inhoud, "]");
  27. $aantal += substr_count($inhoud, "§");
  28. $aantal += substr_count($inhoud, "!");
  29. if($veld !== "website") {
  30. if(preg_match("~[\/]~", $inhoud)) {
  31. $aantal += substr_count($inhoud, "/");
  32. }
  33. }
  34. $fout++;
  35. }
  36. }
  37. if(in_array($veld, $niets_toegelaten)) {
  38. if(preg_match("~['´`áéíóúàèìòùçµäëïö\\\ü]~", $inhoud)) {
  39. $aantal += substr_count($inhoud, "\\");
  40. $aantal += substr_count($inhoud, "'");
  41. $aantal += substr_count($inhoud, "´");
  42. $aantal += substr_count($inhoud, "`");
  43. $aantal += substr_count($inhoud, "á");
  44. $aantal += substr_count($inhoud, "é");
  45. $aantal += substr_count($inhoud, "í");
  46. $aantal += substr_count($inhoud, "ó");
  47. $aantal += substr_count($inhoud, "ú");
  48. $aantal += substr_count($inhoud, "à");
  49. $aantal += substr_count($inhoud, "è");
  50. $aantal += substr_count($inhoud, "ì");
  51. $aantal += substr_count($inhoud, "ò");
  52. $aantal += substr_count($inhoud, "ù");
  53. $aantal += substr_count($inhoud, "µ");
  54. $aantal += substr_count($inhoud, "ç");
  55. $aantal += substr_count($inhoud, "ä");
  56. $aantal += substr_count($inhoud, "ë");
  57. $aantal += substr_count($inhoud, "ï");
  58. $aantal += substr_count($inhoud, "ö");
  59. $aantal += substr_count($inhoud, "ü");
  60. $fout++;
  61. }
  62. }
  63. if($aantal !== 0) {
  64. echo "Het veld <span class=\"nadruk\">" . $veld . "</span> bevat <span class=\"nadruk\">" . $aantal . "</span> ongeldig(e) teken(s)!<br>";
  65. }
  66. }
  67. if($fout == 0) {
  68. return TRUE;
  69. }
  70. }
  71. ?>


Alvast bedankt iedereen.

2 antwoorden

Gesponsorde links
Offline ikki007 - 07/04/2007 19:39 (laatste wijziging 07/04/2007 19:40)
Avatar van ikki007 Gouden medailleGouden medaille

PHP ver gevorderde
http://www.site...amp;cat=10

en

http://www.site...Expressies
Offline JBke - 07/04/2007 19:43
Avatar van JBke PHP gevorderde weet ik maar geen een die het aantal foutieve characters opteld en weergeeft. daar gaat het hem net om een andere preg_match of eregi kan ik wel maken
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.2s