Foros del Web » Programando para Internet » PHP »

error con implode

Estas en el tema de error con implode en el foro de PHP en Foros del Web. Hola, tengo en un formulario html 2 campos las cuales contienen datos y se pueden seleccionar varios items del select. uno es el municipio y ...
  #1 (permalink)  
Antiguo 25/11/2004, 09:49
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 20 años, 9 meses
Puntos: 0
error con implode

Hola,

tengo en un formulario html 2 campos las cuales contienen datos y se pueden seleccionar varios items del select.


uno es el municipio y el otro es el departamento

en el html le he asignado la propiedad []

<SELECT NAME="municipio[]" size="6" multiple id="municipio">

y también a

<SELECT NAME="departamento[]" size="6" multiple id="departamento">

al momento de enviar la información para almacenarla en una base de datos mysql utilizo el implode para separar las selecciones que hizo el usuario en el form anterior

$uno=implode(", ", $_POST[municipio]);

$dos=implode(", ", $_POST[departamento]);

pero obtengo el siguiente error:

Warning: implode(): Bad arguments. in guardar.php on line 19

Warning: Illegal offset type in guardar.php on line 21

Warning: implode(): Bad arguments. in guardar.php on line 21

lo que está viajando osea el valor de la selección es un número ID, porque esa lista de municipios y departamento los tengo en otra tabla, solo que hago un llamado en los select para mostrar los valores, en el campo value viaja el id del municipio o departamento.

Si alguien me puede ayudar o aconsejar.
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.

Última edición por andinistas; 25/11/2004 a las 09:57
  #2 (permalink)  
Antiguo 25/11/2004, 11:28
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Usa comillas para los indices de arrays (como lo es $_POST)

$uno=implode(", ", $_POST['municipio']);

$dos=implode(", ", $_POST['departamento']);

Por lo demás .. ¿ El problema te sucede cuando no seleccionas ninguna opción o sólo una .. o con cualquier n°?

Intenta hacer un:

Código PHP:
<?
echo "<pre>";
print_r($_POST);
echo 
"</pre>";
?>
Para ver que valores (y de que tipo) llegan a tu script .. deberían ser arrays.

Un saludo,
  #3 (permalink)  
Antiguo 25/11/2004, 12:58
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 20 años, 9 meses
Puntos: 0
Ok cluster ha funcionado como dices

Código PHP:
$uno=implode(", "$_POST['municipio']);

$dos=implode(", "$_POST['departamento']); 

lo que guardo en la tabla de la base de datos son los indices, para luego hacer un INNER JOIN y mostrar la información acerca del municipio o departamento

en la tabla municipios esta como:

id_municipio
municipio

id_municipio es la clave principal
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
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 13:46.