Foros del Web » Programando para Internet » PHP »

Agregar datos separados por coma un campo en PHP y de MySQL

Estas en el tema de Agregar datos separados por coma un campo en PHP y de MySQL en el foro de PHP en Foros del Web. Buenos días. Nuevamente me dirijo a ustedes, estimados colegas, en busca de su asesoría, ya que sé tienen más experiencia en este lenguaje de programación ...
  #1 (permalink)  
Antiguo 17/03/2010, 08:15
 
Fecha de Ingreso: febrero-2009
Mensajes: 24
Antigüedad: 11 años
Puntos: 0
Agregar datos separados por coma un campo en PHP y de MySQL

Buenos días.

Nuevamente me dirijo a ustedes, estimados colegas, en busca de su asesoría, ya que sé tienen más experiencia en este lenguaje de programación (PHP/MySQL). Tengo una consulta bastante interesante:

Tengo dos tablas, una llamada "datos" y otra llamada "actividades_economicas". En la tabla "datos" tengo un campo llamado cae (código de actividad económica), el cual es ingresado por el usuario a la hora de inscribir un contribuyente. Por otro lado en la tabla "actividades_economicas" tengo un campo llamado "Codigo". Bien, el caso es que cuando el usuario ingresa el código de actividades económicas en la tabla "datos", a la hora de consultar a cualquier contribuyente, este código se compara con el código de la actividad económica, en caso de que exista, se trae todos los datos de dicho código (descripción, alicuota y mínimo tributable).

Ahora bien, la organización a la que le estoy desarrollado el sistema de información, me dice que algunos contribuyentes tienen varias actividades económicas; algunos tienen hasta 20. Lo que había pensado era que se agregasen los códigos a la tabla "datos" separados por coma, es decir: "código1, código2, código3, ..., códigon", y a la hora de realizar alguna consulta, que vaya comparando código a código y se vaya trayendo los datos. ¿Es posible esto? ¿Me recomiendan alguna otra forma?

Si lo que dije anteriormente es válido, mi pregunta ahora es: ¿cómo lo hago?

Gracias, por su amabilidad, y disculpen que el texto sea tan largo.

Saludos.
  #2 (permalink)  
Antiguo 17/03/2010, 09:43
 
Fecha de Ingreso: marzo-2010
Ubicación: Lima, Perú
Mensajes: 136
Antigüedad: 9 años, 11 meses
Puntos: 2
Respuesta: Agregar datos separados por coma un campo en PHP y de MySQL

No he pensando en otra forma, pero puedes usar Explode.
1) Almacena la data como string (Ej: $codigos)
2) usa explode:
Código PHP:
Ver original
  1. $codigo= explode(",", $codigos);

3) busca en la base de datos según el array $codigo

Espero te haya servido
  #3 (permalink)  
Antiguo 17/03/2010, 09:47
 
Fecha de Ingreso: marzo-2010
Ubicación: Lima, Perú
Mensajes: 136
Antigüedad: 9 años, 11 meses
Puntos: 2
Respuesta: Agregar datos separados por coma un campo en PHP y de MySQL

Cita:
Iniciado por Tenue Ver Mensaje
Buenos días.

..., el cual es ingresado por el usuario a la hora de inscribir un contribuyente. Por otro lado en la tabla "actividades_economicas" tengo un campo llamado "Codigo". Bien, el caso es que cuando el usuario ingresa el código de actividades económicas en la tabla "datos", a la hora de consultar a cualquier contribuyente, este código se compara con el código de la actividad económica, en caso de que exista, se trae todos los datos de dicho código (descripción, alicuota y mínimo tributable).

Ahora bien, la organización a la que le estoy desarrollado el sistema de información, me dice que algunos contribuyentes tienen varias actividades económicas; algunos tienen hasta 20....

Saludos.
Quizas no vaya al caso, pero cuando desarrollas un sistema relacionado a los negocios tienes que tener en cuenta aspectos legales, te digo que uizas no vaya al caso, pero, por ejemplo, acá en Perú, estaria mal, porque solo se permite 3 actividades económicas por Empresa (contribuyente)...


Solo un comentario....

Saludos
  #4 (permalink)  
Antiguo 17/03/2010, 16:26
 
Fecha de Ingreso: febrero-2009
Mensajes: 24
Antigüedad: 11 años
Puntos: 0
Respuesta: Agregar datos separados por coma un campo en PHP y de MySQL

Cita:
Iniciado por dantrix Ver Mensaje
No he pensando en otra forma, pero puedes usar Explode.
1) Almacena la data como string (Ej: $codigos)
2) usa explode:
Código PHP:
Ver original
  1. $codigo= explode(",", $codigos);

3) busca en la base de datos según el array $codigo

Espero te haya servido
Muchísimas gracias por tu respuesta. Intentaré investigar al respecto para ver si es posible y si me sirve... Cualquier cosa te cuento. Saludos.

Cita:
Iniciado por dantrix Ver Mensaje
Quizas no vaya al caso, pero cuando desarrollas un sistema relacionado a los negocios tienes que tener en cuenta aspectos legales, te digo que uizas no vaya al caso, pero, por ejemplo, acá en Perú, estaria mal, porque solo se permite 3 actividades económicas por Empresa (contribuyente)...


Solo un comentario....

Saludos
Bueno, en relación a los aspectos legales, de eso se encargaría el asesor legal de la organización. Yo simplemente lo que hago es realizar el sistema de información que ellos necesitan. La que me indica los parámetros es la gerente general, la cual es abogada, así que ella no debe estar errada. De todas maneras, gracias por tu contesta, estaré al tanto de lo que me indicas, por si acaso.

Saludos.

PD.- Si alguien tiene alguna otra alternativa sobre cómo resolver lo que les planteé arriba, se le agradece, para de esa manera llegar a la alternativa definitiva que es la que implementaré...
  #5 (permalink)  
Antiguo 17/03/2010, 22:28
Avatar de vicram10  
Fecha de Ingreso: enero-2009
Ubicación: Asuncion
Mensajes: 316
Antigüedad: 11 años
Puntos: 27
Respuesta: Agregar datos separados por coma un campo en PHP y de MySQL

Puedes probar de la siguiente forma.

Te doy un ejemplo que yo uso en este tipo de casos que se puede elegir mas de un dato en mi ejemplo uso un checkbox

Código PHP:
<input type="checkbox" name="perms[]" value="1" id="groups_1"/> 
<input type="checkbox" name="perms[]" value="2" id="groups_2"/> 2
<input type="checkbox" name="perms[]" value="3" id="groups_3"/> 
y al momento de recibir esto para guardarlo en mi BD hago de la siguiente forma
Código PHP:
        $permissionsArray = array();
        if (isset(
$_POST['perms']))
        {
            foreach (
$_POST['perms'] as $rgroup)
                
$permissionsArray[] = (int) $rgroup;
        }
        
$finalPermissions implode(",",$permissionsArray); 
Como veras lo unico que hago es controlar que se haya seleccionado algo de ese campo y si eso ocurre entonces recorro con un foreach el campo ya que el mismo tiene varios valores y al recorrer todo y guardarlo en un array entonces lo guardo finalmente en una variable cualquiera con un implode, que lo que hace es

que se guarde asi

Código PHP:
$finalpermissions 'groups_1, groups_2, groups_3'
y en la BD lo guardo en un campo del tipo texto..
Luego cuando necesito los datos lo unico que hago es

Código PHP:
//hago la consulta sql para tomar los datos que quiero del campo y lo guardo en una variable por ahora lo llamamos
//$finalpermissions siendo algo asi $finalpermissions = $row['perms']; siendo perms el campo en mi BD

$permissions = array();
$permissions explode(',' $finalpermissions);
echo 
'Grupo 1: '$premissions[0];
echo 
'Grupo 2: '$premissions[1]; 
Es un ejemplo rapido pero en teoria es asi como lo manejo.. es cuestion que veeas mas o menos como podes aplicarlo..

Etiquetas: coma, mysql, campos
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 15:53.