Bien el asunto es asi al principio no tenia ni idea de como pasarme un arreglo por la URL hasta que encontré el serialize y el unserialize uno al parecer y segun lo que lei comprime de alguna forma el arreglo y el otro al resivir el arreglo con $_GET lo descomprime evidentemente por que por la URL no se pueden pasar arreglos asi no mas.. bien. empece hacer las pruebas al principio sin existo pero después de arreglar unas cosas logre que funcionara pero con el código de prueba que es algo asi mas o menos :
Código PHP:
<?php
$pais[]=1;
$pais[]=2;
$pais[]=34543;
$pais[]=4;
$arreglo = serialize($pais);
?>
Código HTML:
<div align="center"><a href="prueba_para_resivir_por_url.php?id_reporte=<?php echo "$arreglo"; ?>" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage ('resultados_imag','','resultados_img_sustitucion.png',1)"> <img src="resultados_img_original.png" alt="resultados_perfiles" name="resultados_imag" width="24" height="37" border="0"></a></div>
Código PHP:
<?php
$arreglo =$_GET['id_reporte'];
$id_reporte= unserialize($arreglo);
$var=count($id_reporte);
echo $var."<br>";
for($i=0;$i<count($id_reporte);$i++){
echo "$id_reporte[$i]"."<br>";
}
?>
Código PHP:
<?php
//CONSULTA LOS EXAMENES
$sql_examenes_de_la_factura="SELECT exa.nombre_examen,exa.id_examenes
FROM examenes AS exa , factura AS fac , factura_examenes AS fac_exa
WHERE((fac.id_factura='$id_factura')AND
(fac.id_factura=fac_exa.id_factura)AND
(exa.id_examenes = fac_exa.id_examenes))";
$res_examenes_de_la_factura=mysql_query($sql_examenes_de_la_factura,$idc)or die (mysql_error());
while ($datos_examenes=mysql_fetch_array ($res_examenes_de_la_factura)){
?>
<tr>
<td colspan="4"><div align="center"><?php echo $datos_examenes['nombre_examen']; ?> </div></td>
<?php
$arreglo[]=$datos_examenes['id_examenes'];
} // cierre del while de examnes
$var_1= serialize ($arreglo);
?>
y recibo de la misma forma que el ejemplo de arriba la unserializo y despues imprimo a ver si me esta pasando los valores y resulta que me sale el siguiente error
Notice: unserialize() [function.unserialize]: Error at offset 9 of 13 bytes in C:\wamp\www\mirilab\prueba_para_resivir_por_url.ph p on line 9
no se que sea eso y de paso me fijo en la URL y aparece algo asi
http://localhost/mirilab/prueba_para_resivir_por_url.php?id_reporte=a:6:{i: 0;s:2:
cuando normalmente la url cuando uno le pasa el arreglo deberia de haber algo asi
http://localhost/mirilab/prueba_para_resivir_por_url.php?id_reporte=a:4:{i: 0;i:1;i:1;i:2;i:2;i:34543;i:3;i:4;}
la verdad es que llevo todo el dia tratando de hubicar el error pero nada
Como siempre si alguien fuera tan amable de prestarme un poco de ayuda le estaria enormente agradecido y como
siempre que Dios los bendiga