Foros del Web » Programando para Internet » PHP »

Sentencia que diferencie entre letras y numeros

Estas en el tema de Sentencia que diferencie entre letras y numeros en el foro de PHP en Foros del Web. Hola, que tal. Antes que nada perdonar si es algo muy obvio, hace muy poco que estoy con el php. He estado buscando mucho y ...
  #1 (permalink)  
Antiguo 05/11/2008, 10:13
 
Fecha de Ingreso: mayo-2008
Ubicación: España
Mensajes: 130
Antigüedad: 16 años
Puntos: 3
Sentencia que diferencie entre letras y numeros

Hola, que tal.
Antes que nada perdonar si es algo muy obvio, hace muy poco que estoy con el php.
He estado buscando mucho y no encuentro la solución.

Vereis quisiera que dependiendo de si un campo de la tabla de la base de datos son numeros, o son letras, me devolviera un resultado u otro. Vamos que me diferenciará entre números y letras, que es lo que no se hacer, para luego meterlo en un "if else".
Muchas gracias por adelantado.
  #2 (permalink)  
Antiguo 05/11/2008, 10:17
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Sentencia que diferencie entre letras y numeros

primero, obten tu dato de la BD ...

luego con funciones como is_numeric, is_string, etc.. puedes comprobar que contienen

otra forma, mejor... es usar expresiones regulares para comprobar el contenido de esta variable...

suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 05/11/2008, 10:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Sentencia que diferencie entre letras y numeros

Hola Martil1982,

Usa preg_match, con una expresión regular para ver si son números o letras.

Saludos.
  #4 (permalink)  
Antiguo 05/11/2008, 10:21
 
Fecha de Ingreso: mayo-2008
Ubicación: España
Mensajes: 130
Antigüedad: 16 años
Puntos: 3
Muchas gracias! Ahora mismo me pongo a probar, ya os comentare.

Hola de nuevo, bien pues he estado probando y como buen novato que soy, aunque he buscado informacion, no llego a comprender bien como funcionan preg_match o las funciones is_numeric/is_string.

Si me pudierais detallar como usar dichas funciones os estaría muy agradecido, un saludo. :)

Última edición por GatorV; 06/11/2008 a las 15:13
  #5 (permalink)  
Antiguo 06/11/2008, 15:02
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 5 meses
Puntos: 34
Respuesta: Sentencia que diferencie entre letras y numeros

En vez de usar preg_match usá funciones como ctype_digit (también ctype_alnum() o ctype_xdigit() ) que están optimizadas para lo que supuestamente necesitas.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #6 (permalink)  
Antiguo 06/11/2008, 18:03
 
Fecha de Ingreso: mayo-2008
Ubicación: España
Mensajes: 130
Antigüedad: 16 años
Puntos: 3
Respuesta: Sentencia que diferencie entre letras y numeros

Muchas gracias nicolaspar. Al final he comprendido algo el comando preg_match y lo he solucionado, así que doy el tema por solucionado.
He usado el siguiente código:

Código PHP:
if (preg_match("/http/i"$link)) {
  
$link "| <a href=\"$link\">Nombre del enlace</a>";
}
else {
  
$link = ("");

Luego sencillamente en la celda correspondiente de una tabla en php, he llamado a la variable para que me la muestre:

Código PHP:
  "       <td>$link</td>" 


Vamos que cuando empieza el campo de mysql por la sentencia "http", me muestra el enlace con la direccion introducida en él, si no empieza por esas letras, no me muestra nada, eso era justo lo que quería.

De todas formas, probaré el comando que me has mencionado, ya que supongo que la forma en que lo he hecho es bastante rudimentaria, aunque válida para mí :).
Muchas gracias por vuestra ayuda ;)
  #7 (permalink)  
Antiguo 07/11/2008, 04:50
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 5 meses
Puntos: 34
Respuesta: Sentencia que diferencie entre letras y numeros

Ahora, pediste una validación de letras y números y terminaste validando un http? No comprendo...para eso es muuucho usar preg_match, hay funciones mucho más simples (strstr, etc)
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #8 (permalink)  
Antiguo 07/11/2008, 15:58
Avatar de Deschamps  
Fecha de Ingreso: octubre-2008
Mensajes: 257
Antigüedad: 15 años, 6 meses
Puntos: 8
Respuesta: Sentencia que diferencie entre letras y numeros

Cita:
Iniciado por nicolaspar Ver Mensaje
Ahora, pediste una validación de letras y números y terminaste validando un http? No comprendo...para eso es muuucho usar preg_match, hay funciones mucho más simples (strstr, etc)
Ciertamente. Al final ha resultado que todo se reducía a saber si una cadena empieza por esas letras... Un vistazo rápido al manual para encontar las quinientas referencias a substr le habrían bastado :)
  #9 (permalink)  
Antiguo 12/11/2008, 10:03
 
Fecha de Ingreso: mayo-2008
Ubicación: España
Mensajes: 130
Antigüedad: 16 años
Puntos: 3
Respuesta: Sentencia que diferencie entre letras y numeros

Sí, sencillamente me ha servido el validar solo las primeras letras, en este caso http, ya que todos los registros del campo en cuestión tienen que ser direcciones web, en caso contrario lo que hace el codigo es ignorar lo que haya escrito sin mostrar ningun resultado, lo que al estar iniciandome en php pues aun ignoro la gran mayoría de comandos/sentencias

Muchas gracias por vuestra ayuda.
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 05:26.