Foros del Web » Programando para Internet » PHP »

Si el texto dice ... hacer ...

Estas en el tema de Si el texto dice ... hacer ... en el foro de PHP en Foros del Web. Hola, estoy haciendo un sistema de "Login y registro" y quiero que cuando el username sea "ameno" diga Admin al costado Intenté pero no lo ...
  #1 (permalink)  
Antiguo 25/09/2011, 19:58
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 13 años, 8 meses
Puntos: 1
Si el texto dice ... hacer ...

Hola, estoy haciendo un sistema de "Login y registro" y quiero que cuando el username sea "ameno" diga Admin al costado

Intenté pero no lo consigo

Código PHP:
if (strpos($nick"ameno") !== false) { 
    
//esta dentro
    
echo "Administrador";

El problema de ahí es que si pongo "amenoa" pone como si estubiera dentro.
De todas formas no me funciona, si alguno me puede pasar la función q debo usar. Gracias



Gracias de antemano.

Última edición por ameno123; 25/09/2011 a las 20:17
  #2 (permalink)  
Antiguo 25/09/2011, 21:23
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: Si el texto dice ... hacer ...

Strpos busca una concidencia dentro de una cadena y devuelve la posición:
Código PHP:
Ver original
  1. var_dump(strpos('hola', 'a')); // Int 3

¿Por qué no simplemente haces una comparación?
Código PHP:
Ver original
  1. $foo = 'hola';
  2. if ($foo == 'hola') {
  3.     echo 'Foo es igual a hola!';
  4. }
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #3 (permalink)  
Antiguo 25/09/2011, 23:29
 
Fecha de Ingreso: agosto-2011
Ubicación: Argentina
Mensajes: 31
Antigüedad: 12 años, 7 meses
Puntos: 1
Información Respuesta: Si el texto dice ... hacer ...

Como dice sourcegeek haz una comparación y listo, sino puedes usar:
Código PHP:
Ver original
  1. if (preg_match('/^ameno$/', $user)){
  2.   echo "Administrador";
  3. }

saludos
  #4 (permalink)  
Antiguo 26/09/2011, 01:40
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 12 años, 11 meses
Puntos: 261
Respuesta: Si el texto dice ... hacer ...

Y si se plantea ampliar el número de administradores en un futuro?, puedes marcarlo en la DB.

Cuando recojas los datos de la DB, recoges el campo (por ejemplo:) is_admin que hay en la misma tabla de los usuarios.

Después no tendrás que comparar cada nombre o andar modificando el script si deseas añadir un nuevo administrador. Y la comparación siempre será variable según cada usuario.

Código PHP:
//Datos de la DB
$isAdmin 1;
$name 'ameno';

if(
=== $isAdmin)
{
    echo 
$name ' [Admin]';
}
else
{
    echo 
$name;
}

// Si es administrador dará como resultado:
// nombreusuario [Admin]
// Si no solo mostrará el nombre 
Saludos,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight
  #5 (permalink)  
Antiguo 26/09/2011, 11:11
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 13 años, 8 meses
Puntos: 1
Respuesta: Si el texto dice ... hacer ...

Muchisimas gracias a todos!! Me funcinó perfectamente. GRACIAS


Para los que quieren ver como quedó: http://tackua.com.ar/list.php

Edit:

Una cosita

Código PHP:
Ver original
  1. if (preg_match('/^ameno$/', $user)){
  2. * echo "Administrador";
  3. }

Como añado otro admin??

(para tenr 2)

Última edición por ameno123; 26/09/2011 a las 12:14
  #6 (permalink)  
Antiguo 26/09/2011, 16:48
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: Si el texto dice ... hacer ...

http://php.net/manual/es/language.operators.logical.php

Existe ||

Creo que te falta mucho por aprender, te recomiendo leer antes de todo..
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #7 (permalink)  
Antiguo 26/09/2011, 17:06
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Si el texto dice ... hacer ...

Bueno teniendo en cuenta que estás usando expresiones regulares, puedes hacer algo así:

Código PHP:
Ver original
  1. <?php
  2.  
  3. $user = 'ameno';
  4.  
  5. if (preg_match('/^ameno$|^andres$/', $user)) {
  6.     echo "Administrador";
  7. } else {
  8.     echo 'Desconocido';
  9. }

Otro ejemplo, en caso de tener un array de administradores:

Código PHP:
Ver original
  1. <?php
  2. $users = array('ameno', 'andres', 'maria');
  3.  
  4. $user = 'ameno';
  5.  
  6. if (in_array($user, $users)) {
  7.     echo 'Administrador';
  8. } else {
  9.     echo 'Desconocido';
  10. }

Son sólo ejemplos básicos, consulta las funciones en el manual PHP y práctica para que vayas aprendiendo.

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Etiquetas: registro
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 03:24.