Validacion y comparacion de variables (strleng, strpos y substr )


/ Published in: PHP
Save to your folder(s)



Copy this code and paste it in your HTML
  1. <?php
  2.  
  3. $permitidos = utf8_encode("abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZáéíúóÁÉÍÓÚ- ");
  4.  
  5. function validateUsername($name){
  6. //NO cumple longitud minima
  7. if(strlen($name) < 3) {
  8. return false;
  9. //SI longitud pero NO solo caracteres A-z
  10. } else {
  11.  
  12. for ($i=0; $i<strlen($name); $i++){
  13.  
  14. if (strpos($permitidos, substr($name,$i,1))===false){
  15. return true;
  16. } else {
  17. return false;
  18. }
  19.  
  20. }
  21.  
  22. }
  23. }
  24.  
  25. function validateApellido($apellido){
  26. //NO cumple longitud minima
  27. if(strlen($apellido) < 3) {
  28. return false;
  29. //SI longitud pero NO solo caracteres A-z
  30. } else {
  31.  
  32. for ($i=0; $i<strlen($apellido); $i++){
  33.  
  34. if (strpos($permitidos, substr($apellido,$i,1))===false){
  35. return true;
  36. } else {
  37. return false;
  38. }
  39.  
  40. }
  41.  
  42. }
  43. }
  44.  
  45. function validateEmail($email){
  46. //NO hay nada escrito
  47. if(strlen($email) == 0)
  48. return false;
  49. // SI escrito, NO VALIDO email
  50. else if(!filter_var($_POST['email'], FILTER_SANITIZE_EMAIL))
  51. return false;
  52. // SI rellenado, SI email valido
  53. else
  54. return true;
  55. }
  56.  
  57. //Comprobacion de datos
  58. //variables valores por defecto
  59. $username = "";
  60. $password1 = "";
  61. $email = "";
  62.  
  63. //Validacion de datos enviados
  64. if(isset($_POST['concursar_y'])){
  65.  
  66. if(!validateUsername($_POST['nombre'])){
  67. $username = "error";
  68. $error_name = utf8_encode("Sólo letras.");
  69. }
  70.  
  71.  
  72. if(!validateApellido($_POST['apellido'])){
  73. $apellido = "error";
  74. $error_subname = utf8_encode("Sólo letras.");
  75. }
  76.  
  77.  
  78. if(!validateEmail($_POST['email'])){
  79. $email = "error";
  80. $error_mail = utf8_encode("Correo no válido.");
  81. }
  82.  
  83. //Guardamos valores para que no tenga que reescribirlos
  84. $nameValue = $_POST['nombre'];
  85. $subnameValue = $_POST['apellido'];
  86. $emailValue = $_POST['email'];
  87.  
  88. //Comprobamos si todo ha ido bien
  89. if($username != "error" && $apellido != "error" && $email != "error"){
  90. $status = 1;
  91. }
  92. }
  93.  
  94. $mens_tit = utf8_encode("Agradecemos tu interés");
  95. $mens_subtit = utf8_encode("pronto comenzarás a recibir información de Hipoglós");
  96. ?>
  97. <?php if(!isset($status)):?>
  98. <form method="post" name="form1" action="index.php">
  99. <div class="cajaRegistro">
  100. <span class="titulo">Reg&iacute;strate</span>
  101. <span class="subtitulo">y recibe informaci&oacute;n</span>
  102. <span class="inputname">Nombre <span style="font-size: 10px; color: #E31A2D; "><?php echo $error_name; ?></span></span>
  103. <span class="inputbox"><input type="text" id="nombre" name="nombre" value="<?php echo $nameValue; ?>" size="21" /></span>
  104. <span class="inputname">Apellido <span style="font-size: 10px; color: #E31A2D;"><?php echo $error_subname; ?></span></span>
  105. <span class="inputbox"><input type="text" name="apellido" id="apellido" value="<?php echo $subnameValue; ?>" size="21" /></span>
  106. <span class="inputname">Mail <span style="font-size: 10px; color: #E31A2D; "><?php echo $error_mail; ?></span></span>
  107. <span class="inputbox"><input type="text" name="email" id="email" value="<?php echo $emailValue; ?>" size="21" /></span>
  108. <span class="iconogo"><input type="image" name="concursar" id="concursar" src="<?php echo get_template_directory_uri();?>/images/iconogo.png" /></span>
  109. </div>
  110. </form>
  111. <?php else:
  112.  
  113. //Si se logro pasar la validación
  114.  
  115. ?>

Report this snippet


Comments

RSS Icon Subscribe to comments

You need to login to post a comment.