Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/07/2011, 08:12
albertrc
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 15 años, 2 meses
Puntos: 1
validacion de telefono con php

quiero validar el teléfono

hay algo que no hago bien porque siempre me sale el mensaje que entre el teléfono por favor
esto tendría que salir después de pulsar al botón de enviar al formulario y tampoco tendría que salir la primera vez que entre en el formulario

estoy utilizando la función ereg [0-9]{9}
9digitos y los valores que esperen sean del 0 al 9

he hecho 4 variables
1 para el prefijo
2 para los 2 o 3 primeros números de teléfono
3 para los 2 números de teléfono centrales
4 para los 2 últimos números de teléfono

5 esta variable tiene concatenada las 4 variables superiores

$prefijo_telefono = (int) $_POST['prefijo_telefono'];
$telefono_2_o_3_primeros_digitos = (int) $_POST['telefono_2_o_3_primers_digitos'];
$telefono_2_digitos_centrales = (int) $_POST['telefono_2_digitos_centrales'];
$telefono_2_ultimos_digitos = (int) $_POST['telefono_2_ultimos_digitos'];

$telefono = (int) $prefijo_telefono . $telefono_2_o_3_primeros_digitos . $telefono_2_digitos_centrals . $telefono_2_ultimos_digitos;

if($telefono != ereg("[0-9]{9}",$telefono)
){


?>

<label for="telefono">Prefijo + Telèfono: *</label><br/>
<select id="prefijo_telefono" name="prefijo_telefono">
<option value="" selected="selected"> - Prefijo Telèfono - </option>
<optgroup label="Prefijo">
<option value="972">972</option>
<option value="93">93</option>
<option value="977">977</option>
<option value="973">973</option>
</optgroup>
</select>
- <input type="text" name="telefono_2_o_3_primeros_digitos" size="3" maxlength="3"/> - <input type="text" name="telefono_2_digitos_centrales" size="2" maxlength="2"/> - <input type="text" name="telefono_2_ultimos_digitos" size="2" maxlength="2"/> <br/>
<?php
echo 'Introduzca el telefono por favor<br/>';
}