Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] condicionar campos de texto para que se escriba solo letras o numeros

Estas en el tema de condicionar campos de texto para que se escriba solo letras o numeros en el foro de PHP en Foros del Web. Hola foreros tengo un registro de usuario en php para un trabajo de la uni... en el que necesito condicionar los campos de texto para ...
  #1 (permalink)  
Antiguo 25/04/2013, 12:21
 
Fecha de Ingreso: abril-2013
Ubicación: Venezuela
Mensajes: 6
Antigüedad: 11 años
Puntos: 0
condicionar campos de texto para que se escriba solo letras o numeros

Hola foreros tengo un registro de usuario en php para un trabajo de la uni... en el que necesito condicionar los campos de texto para que se escriba solo letras o numeros por ejemplo el campo nombre q reciba solo letras, el campo telefono q reciba solo numeros, o en algun caso que no se pueda escribir simbolos.

Código PHP:
<?php
session_start
();
mysql_connect('localhost','root','')or die ('Ha fallado la conexión con el servidor: '.mysql_error());
mysql_select_db('tesis')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
function 
formRegistro(){
?>
<form action="registro.php" method="post">
  <table width="970" border="1" cellpadding="1" cellspacing="1" bgcolor="#1F9004">
    <tr>
      <td width="297"><div align="right">Usuario: </div></td>
      <td width="335"><input type="text" name="username" size="30" maxlength="20" /></td>
      <td width="334">&nbsp;</td>
    </tr>
    <tr>
      <td><div align="right">Email:</div></td>
      <td><div align="left">
        <input type="text" name="email" size="40" maxlength="40" />
      </div></td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td><div align="right">Nombre: </div></td>
      <td><input name="nombre" type="text" id="nombre" /></td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td><div align="right">Apellido: </div></td>
      <td><input name="apellido" type="text" id="apellido" /></td>
      <td></td>
    </tr>
    <tr>
      <td><div align="right">Password: </div></td>
      <td><div align="left">
        <input type="password" name="password" size="40" maxlength="10" /></div></td>
      <td>Confirma:
      <input type="password" name="password2" size="40" maxlength="10" /></td>
    </tr>
    <tr>
      <td><div align="right">Direcci&oacute;n: </div></td>
      <td><div align="left">
        <input name="direccion" type="text" id="direccion" /></div></td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td><div align="right">Ciudad o Estado:</div></td>
      <td><div align="left">
        <input name="estado" type="text" id="estado" /></div></td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td><div align="right">Pais:</div></td>
      <td><div align="left">
        <select name="pais" class="selects" id="pais">
<option value="CO" >Colombia</option>
<option value="KM" >Comores</option>
<option value="EC" >Ecuador</option>
<option value="EG" >Egipto</option>
<option value="SV" >El Salvador</option>
<option value="GQ" >Guinea Ecuatorial</option>
<option value="ER" >Eritrea</option>
<option value="EE" >Estonia</option>
<option value="ET">Etiop&iacute;a</option>
<option value="FK" >Islas Malvinas</option>
<option value="FO" >Islas Faroe</option>
<option value="FJ" >Fiji</option>
<option value="FI" >Finlandia</option>
<option value="FR" >Francia</option>
<option value="IL" >Israel</option>
<option value="IT" >Italia</option>
<option value="JM" >Jamaica</option>
<option value="MX">M&eacute;xico</option>
<option value="NG" >Nigeria</option>
<option value="NU" >Niue</option>
<option value="NF" >Norfolk</option>
<option value="MP" >Islas Marianas del Norte</option>
<option value="NO" >Noruega</option>
<option value="OM">Om&aacute;n</option>
<option value="PK">Paquist&aacute;n</option>
<option value="PW" >Islas Palau</option>
<option value="PA">Panam&aacute;</option>
<option value="PG">Pap&uacute;a Nueva Guinea</option>
<option value="PY" >Paraguay</option>
<option value="PE">Per&uacute;</option>
<option value="PH" >Filipinas</option>
<option value="PN" >Pitcairn</option>
<option value="PL" >Polonia</option>
<option value="PT" >Portugal</option>
<option value="PR" >Puerto Rico</option>
<option value="QA" >Qatar</option>
<option value="RE">Reuni&oacute;n</option>
<option value="RO" >Rumania</option>
<option value="RU" >Rusia</option>
<option value="RW" >Ruanda</option>
<option value="SH" >Santa Helena</option>
<option value="KN" >Saint Kitts y Nevis</option>
<option value="LC">Santa Luc&iacute;a</option>
<option value="PM" >St. Pierre y Miquelon</option>
<option value="VC" >San Vicente y Granadinas</option>
<option value="WS" >Samoa</option>
<option value="SM" >San Marino</option>
<option value="ST">Santo Tom&eacute; y Pr&iacute;ncipe</option>
<option value="SA">Arabia Saud&iacute;</option>
<option value="SN" >Senegal</option>
<option value="SC" >Seychelles</option>
<option value="SL" >Sierra Leona</option>
<option value="SG" >Singapur</option>
<option value="SK">Rep&uacute;blica Eslovaca</option>
<option value="SI" >Eslovenia</option>
<option value="SB">Islas Salom&oacute;n</option>
<option value="SO" >Somalia</option>
<option value="ZA">Rep&uacute;blica de Sud&aacute;frica</option>
<option value="ES">Espa&ntilde;a</option>
<option value="LK" >Sri Lanka</option>
<option value="SD">Sud&aacute;n</option>
<option value="SR" >Surinam</option>
<option value="SJ" >Islas Svalbard y Jan Mayen</option>
<option value="SZ" >Suazilandia</option>
<option value="SE" >Suecia</option>
<option value="CH" >Suiza</option>
<option value="SY" >Siria</option>
<option value="TW">Taiw&aacute;n</option>
<option value="TJ">Tayikist&aacute;n</option>
<option value="TZ" >Tanzania</option>
<option value="TH" >Tailandia</option>
<option value="TG" >Togo</option>
<option value="TK" >Islas Tokelau</option>
<option value="TO" >Tonga</option>
<option value="TT" >Trinidad y Tobago</option>
<option value="TN">T&uacute;nez</option>
<option value="TR">Turqu&iacute;a</option>
<option value="TM">Turkmenist&aacute;n</option>
<option value="TC" >Islas Turks y Caicos</option>
<option value="TV" >Tuvalu</option>
<option value="UG" >Uganda</option>
<option value="UA" >Ucrania</option>
<option value="AE">Emiratos &Aacute;rabes Unidos</option>
<option value="UK" >Reino Unido</option>
<option value="US" >Estados Unidos</option>
<option value="UM" >Islas menores de Estados Unidos</option>
<option value="UY" >Uruguay</option>
<option value="UZ">Uzbekist&aacute;n</option>
<option value="VU" >Vanuatu</option>
<option value="VA" >Ciudad del Vaticano (Santa Sede)</option>
<option value="VE" selected >Venezuela</option>
<option value="VN" >Vietnam</option>
<option value="VG">Islas V&iacute;rgenes (Reino Unido)</option>
<option value="VI">Islas V&iacute;rgenes (EE.UU.)</option>
<option value="WF" >Islas Wallis y Futuna</option>
<option value="YE" >Yemen</option>
<option value="YU" >Yugoslavia</option>
<option value="ZM" >Zambia</option>
<option value="ZW" >Zimbabue</option>
      </select></div></td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><div align="center">
        <input type="submit" value="Registrar" />
      </div></td>
      <td>&nbsp;</td>
    </tr>
  </table>
</form>
<?php
}
if (isset(
$_POST["username"])) {
   
$username $_POST["username"];
   
$nombre$_POST["nombre"];
   
$apellido$_POST["apellido"];
   
$password $_POST["password"];
   
$password2 $_POST["password2"];
   
$email $_POST["email"];
   
$direccion$_POST["direccion"];
   
$estado$_POST["estado"];
   
$pais$_POST["pais"];
   if(
$username==NULL|$password==NULL|$password2==NULL|$email==NULL|$direccion==NULL|$estado==NULL|$pais==NULL|$nombre==NULL|$apellido==NULL) {
      echo 
"un campo está vacio.";
      
formRegistro();
   }else{
      if(
$password!=$password2) {
         echo 
"Las contraseñas no coinciden";
         
formRegistro();
      }else{
         
$checkuser mysql_query("SELECT usuario FROM usuarios WHERE usuario='$username'");
         
$username_exist mysql_num_rows($checkuser);
         
$checkemail mysql_query("SELECT email FROM usuarios WHERE email='$email'");
         
$email_exist mysql_num_rows($checkemail);
         if (
$email_exist>0|$username_exist>0) {
            echo 
"El nombre de usuario o la cuenta de correo estan ya en uso";
            
formRegistro();
         }else{
            
$query 'INSERT INTO usuarios (usuario, password, email, nombre, apellido, direccion, estado, pais, fecha)
            VALUES (\''
.$username.'\',\''.$password.'\',\''.$email.'\',\''.$nombre.'\',\''.$apellido.'\',\''.$direccion.'\',\''.$estado.'\',\''.$pais.'\',\''.date("Y-m-d").'\')';
            
mysql_query($query) or die(mysql_error());
            echo 
'El usuario '.$username.' ha sido registrado de manera satisfactoria.<br />';
            echo 
'Ahora puede entrar ingresando su usuario y su password<br />';
            
?>
<FORM ACTION="comprobar.php" METHOD="post">
<table width="970" border="1" cellpadding="1" cellspacing="1" bgcolor="#1F9004">
    <tr>
      <td width="374"><div align="right">Usuario :</div></td>
      <td width="218"><p align="left">
        <INPUT TYPE="text" NAME="usuario" SIZE=20 MAXLENGTH=20></p></td>
      <td width="374">&nbsp;</td>
    </tr>
    <tr>
      <td><div align="right">Password:</div></td>
      <td><div align="left">
        <INPUT TYPE="password" NAME="password" SIZE=10 MAXLENGTH=10></div></td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><p align="center"><INPUT TYPE="submit" VALUE="Ingresar"></p></td>
      <td>&nbsp;</td>
    </tr>
    </table>            
</FORM>
            <?php
         
}
      }
   }
}else{
   
formRegistro();
}
?>
  #2 (permalink)  
Antiguo 25/04/2013, 12:38
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: condicionar campos de texto para que se escriba solo letras o numeros

por el lado de php, podrías verificar mediante una expresión regular, aunque imagino que lo que necesitas sería mejor validarlo también desde javascript, para que se valide antes de enviar los datos.
  #3 (permalink)  
Antiguo 25/04/2013, 12:55
 
Fecha de Ingreso: abril-2013
Ubicación: Venezuela
Mensajes: 6
Antigüedad: 11 años
Puntos: 0
Respuesta: condicionar campos de texto para que se escriba solo letras o numeros

Cita:
Iniciado por ocp001a Ver Mensaje
por el lado de php, podrías verificar mediante una expresión regular, aunque imagino que lo que necesitas sería mejor validarlo también desde javascript, para que se valide antes de enviar los datos.
como es eso de verificar con una expresion regular??? yo vi algunos ejemplos en javascript de como hacer que un campo de texto solo le puedan introducir numeros pero no se nada sobre el lenguaje preferi preguntar a ver si alguien sabe hacer eso pero en php..... por favor tu ayuda siempre sera bien recibida gracias....
  #4 (permalink)  
Antiguo 25/04/2013, 14:07
 
Fecha de Ingreso: abril-2013
Ubicación: Venezuela
Mensajes: 6
Antigüedad: 11 años
Puntos: 0
Respuesta: condicionar campos de texto para que se escriba solo letras o numeros

ok doy este tema port concluido para aquellos q necesitan solucion al mismo problema q tengo yo aqui les dejo el link: http://www.telefonica.net/web2/blas-mar/validarformu.html
  #5 (permalink)  
Antiguo 25/04/2013, 19:36
 
Fecha de Ingreso: julio-2012
Ubicación: Ciudad de México
Mensajes: 44
Antigüedad: 11 años, 9 meses
Puntos: 2
Respuesta: condicionar campos de texto para que se escriba solo letras o numeros

Cita:
Iniciado por andresg12 Ver Mensaje
ok doy este tema port concluido para aquellos q necesitan solucion al mismo problema q tengo yo aqui les dejo el link: http://www.telefonica.net/web2/blas-mar/validarformu.html
Venía a poner el mismo link, chale.

Etiquetas: campos, condicionar, letras, mysql, numeros, registro, select, sql, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:34.