Nueva pregunta

Pregunta:

Fecha: 26-05-2015 10:31:32 (En Español)

¿Como puedo obtener el último número de una cedula y asignar a este un día de la semana?[Resuelta]

Saludos amigos!
Tengo que hacer un sistema donde las personas tienen que comprar productos por su teminal de su numero de cedula. Ejemplo: Los lunes le corresponde comprar productos a personas que tienen su ultimo numero de cedula 0 y 1.los martes 2-3 asi susecivamente.quien me da una idea?

Agradecido de ante mano.
Etiquetas: PHP - Pregunta Votos: 0 - Respuestas: 4 - Vistas: 11 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 27-05-2015 06:36:28 Que tal Eduard Aguilar, no se en que se base el correlativo de tu Pais en la cedula, ahora bien puedes probar para ordenarlas un Order By Natural de MySql o tambien puedes probar el de PHP te dejo el link de la doc

    OrderNaturalPHP

    Algo que ayudaria bastante para ordenarlos , seria analizar cual es la secuencia del codigo alfanumerico, numericio etc...


    Saludos
      Votos: 0 - Link respuesta
     
  • Fecha: 29-05-2015 04:27:58 Hola que tal Eduard Aguilar mira si lo que quieres es devolver el ultimo numero de una cedula bien si importar de que pais sea lo puedes de esta manera

    en php substr("12456789", -1); aqui te devuelve el 9
    en mysql SELECT SUBSTRING('12456789',-1)

    Lo ideal seria por ejemplo que lo hicieras por sql
    ej: SELECT cedula FROM table WHERE SUBSTRING( cedula , -1 ) = 1

    En esta consulta te devuelve todas las cédulas que termine en 1 y así sucesivamente.
      Votos: 1 - Link respuesta
     
  • Fecha: 29-05-2015 10:29:31 Podrías hacer algo sencillo como esto:

    //Constantes, meramente informativas para documentación
    const SUNDAY    = 0;
    const MONDAY    = 1;
    const TUESDAY   = 2;
    const WEDNESDAY = 3;
    const THURSDAY  = 4;
    const FRIDAY    = 5;
    const SATURDAY  = 6;
    
    //Qué día de la semana es hoy?
    $weekDay = date('w');
    
    /**
     * Creamos una matriz sencilla de permisos
     * Asumimos que los sábados y domingos todos pueden comprar
     * El lunes sólo los dígitos 1 y 2, el martes 3 y 4 y así sucesivamente
     */
    $permissionMatrix = array(
        SUNDAY    => array(1, 2, 3, 4, 5, 6, 7, 8, 9, 0),
        MONDAY    => array(1, 2),
        TUESDAY   => array(3, 4),
        WEDNESDAY => array(5, 6),
        THURSDAY  => array(7, 8),
        FRIDAY    => array(9, 0),
        SATURDAY  => array(1, 2, 3, 4, 5, 6, 7, 8, 9, 0),
    );
    
    //Por defecto NO pueden comprar
    $canBuy = false;
    
    //Aquí tu mecanismo para obtener el último dígito de la cédula
    //$userLastDigit = 5;
    $userLastDigit = getLastDigitForUser();
    
    //Validamos que el usuario pueda comprar acorde a su último dígito
    if (in_array($userLastDigit, $permissionMatrix[$weekDay]))
    {
        $canBuy = true;
    }
    
    if ($canBuy)
    {
        //Tu proceso
        echo 'Compra';
    }
    else
    {
        echo 'Lo sentimos, hoy no puedes comprar';
    }
    
    
      Votos: 1 - Link respuesta
     
  • Fecha: 09-06-2015 05:50:15 Eduar:

    Debes combinar 2 cosas: Por una lado lo que dice Jesús, obtener el ultimo numero de documento ya sea por PHP o MySQL (El te indico el modo), por otro lado una vez que obtienes ese dato creas una variable y la buscas por día mediante un SWICH ...

    a MODO DE EJEMPLO

    en php substr("12456789", -1); aqui te devuelve el 9

    			 switch( $dias )
    			 
    			 { 
     /////Quienes pueden comprar
    			 case 'Lunes': 1); 
    			 break; 
    			 case 'Martes': 2); 
    			 break; 
    			 case 'Miercoles': 3); 
    			 break; 
    			 case 'Jueves': 4); 
    			 break; 			 
    			 case 'Viernes': 5); 
    			 break;
    			 default: Ningún Dia); 
    			 }
      Votos: 1 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com