Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

215
Vistas
Hacer coincidir la matriz de cadenas con los números para obtener los valores de la base de datos

En mi base de datos, tengo una columna de estado en la que uso números para representar el estado de un producto. Cada uno de estos números representa un valor de cadena, por ejemplo, 1 está abierto, 2 está cerrado, etc. Ahora, para mostrar un recuento de estos estados en mi página web, estoy convirtiendo los siguientes números en una cadena para mostrárselos al usuario:

 array(1=>'Open',8=>'Hot',2=>'Closed',3=>'Transacted',4=>'Dead',9=>'Follow Up',11=>'Working')

Ahora tengo este conteo como un enlace en el que se puede hacer clic, donde el usuario puede hacer clic en el conteo y lo lleva a una nueva página que muestra los detalles de ese artículo. Para lo cual estoy usando esto:

 <a target='_blank' href='".site_url('reports/viewall?status=' . $status)."'>".$num."</a>

Esto pasa correctamente el argumento a la URL y muestra http://localhost/reports/viewall?status=Closed

Ahora estoy almacenando esta variable en mi controlador como $estado, pero no puedo usar este valor de cadena en mi consulta de modelo, que es este, ya que está dando el valor de cadena de estado y no el número relacionado con él:

 SELECT * from TABLE1 where status = $status

Clase de controlador donde estoy almacenando el estado de $:

 $status = $this->input->get('status'); $content['individualleads'] = $this->leads_model->get_all_leads($status )->result();
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Creo que el mejor enfoque sería pasar el número entero en la URL y usar el valor del texto de la matriz solo cuando es texto destinado al usuario. Por lo que sólo:

 http://localhost/reports/viewall?status=2

Otra alternativa es voltear la matriz y acceder a la tecla de texto:

 $status_num = array_flip($array)[$status];

O busque la matriz original:

 $status_num = array_search($status, $array);

Probablemente sería más estándar tener una tabla status_types con el entero status_id y el texto status_text para cada estado y unirse a esto al recuperar el estado.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda