Foros del Web » Programando para Internet » PHP »

ayuda con redireccion de pagina

Estas en el tema de ayuda con redireccion de pagina en el foro de PHP en Foros del Web. hola a todos, espero puedan ayudarme con el siguiente problema: estoy tratando de mostrar un archivo tipo blob, utilice un muy buen tuturial que esta ...
  #1 (permalink)  
Antiguo 11/07/2006, 16:01
Avatar de ing_aprendiz  
Fecha de Ingreso: septiembre-2005
Mensajes: 136
Antigüedad: 18 años, 7 meses
Puntos: 0
De acuerdo ayuda con redireccion de pagina

hola a todos, espero puedan ayudarme con el siguiente problema: estoy tratando de mostrar un archivo tipo blob, utilice un muy buen tuturial que esta en el foro, para el archivo de listar archivos tengo el siguiente script:

Código PHP:
<html><!-- InstanceBegin template="/Templates/empresa.dwt" codeOutsideHTMLIsLocked="false" -->
<head>
<script type="text/javascript" language="JavaScript1.2" src="menu_empresa/stmenu.js"></script>
<title>Documento sin t&iacute;tulo</title>
<style type="text/css">
<!--
body {scrollbar-face-color:#336699;
scrollbar-highlight-color:#8FB7CF;
scrollbar-3dlight-color:#336699;
scrollbar-darkshadow-color:#5D859D;
scrollbar-shadow-color:#8FB7CF;
scrollbar-arrow-color:#EFE9E0;
scrollbar-track-color:#FFFFFF;
color:#000000;
background-color:#FFFFFF;
font-family:verdana,arial;
font-size:12px}
/* End of style section. */
-->
</style>

</head>

<body>
<table width="1024" border="0" cellpadding="0" cellspacing="0">
  <!--DWLayoutTable-->
  <tr>
    <td height="82" colspan="3" valign="top"><img src="images/empresa_r1_c1.gif" width="1024" height="87"></td>
  </tr>
  
  <tr>
      <script type="text/javascript" language="JavaScript1.2" src="menu_empresa/empresa.js"></script>
    <td height="33" colspan="3" valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="0">
      <!--DWLayoutTable-->
      
    </table>    </td>
  </tr>
  <tr>
    <td width="239" height="669">&nbsp;</td>
    <td width="659" valign="top"><!-- InstanceBeginEditable name="EditRegion1" -->
      <p>&nbsp;</p>
        <p>&nbsp;</p>
<table align="center" border="0" bordercolor="#6699CC" bgcolor="#F8F8F8">
    <!--DWLayoutTable-->
   
    <tr valign="baseline">
     <td width="217" height="21" align="right" valign="top" nowrap bgcolor="#E6F4F7">
      <div align="left" class="Estilo1">
       <div align="center" style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; 
       font-weight: bold"><a href="subir_tablas.php" style="color:#000000">Subir Documentaci&oacute;n </a></div>
     </div></td>
    <td width="212" valign="top" bgcolor="#E6F4F7"><div align="center" style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; font-weight: bold"><a href="ver_tablas.php" style="color:#000000">Ver Documentaci&oacute;n </a></div></td>
    </tr>
    
    <tr valign="baseline">
     <td height="68" colspan="2" align="left"" valign="top" style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; height="105 ><p>&nbsp;</p>      
     <?php 
    mysql_connect
("localhost","apsoluti_","") or die ("no se ha podido conectar a la BD"); 
    
mysql_select_db("apsoluti_kansei") or die ("no se ha podido seleccionar la BD"); 
    
$sql "SELECT id,archivo_nombre,archivo_tipo,archivo_peso FROM tablas where id_proyecto=$id_proyecto"
    
$consulta mysql_query($sql) or die ("No hay documentos para este proyecto"); 

    While (
$registro=mysql_fetch_assoc($consulta)){ 
        echo 
"<a href='descargar_tabla.php?id=$registro[id]'>Descargar</a>";
        echo 
"<br> <b>Nombre archivo: </b>".$registro['archivo_nombre']; 
        echo 
"<br> <b>Tipo archivo (MIME formato): </b>".$registro['archivo_tipo']; 
        echo 
"<br> <b>Peso: </b>".$registro['archivo_peso']." bytes.<br></br>"
    } 
?></td>
    </tr>
 </table>
      <p>&nbsp;</p>
    <!-- InstanceEndEditable --></td>
    <td width="126">&nbsp;</td>
  </tr>
    </table>
</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td height="192">&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>

</body>
<!-- InstanceEnd --></html>
y para descargar el siguiente script:

Código PHP:
<?
mysql_connect
("localhost","apsoluti_","") or die ("no se ha podido conectar a la BD"); 
mysql_select_db("apsoluti_kansei") or die ("no se ha podido seleccionar la BD"); 
$qry "SELECT archivo_tipo, archivo_binario FROM tablas WHERE id=$id";
 
$res mysql_query($qry);
 
$tipo mysql_result($res0"archivo_tipo");
 
$contenido mysql_result($res0"archivo_binario");

 
header("Content-type: $tipo");
 print 
$contenido
 
?>
necesito que una vez le de clic en descargar en la pagina listar_archivos.php se vaya a la pagina descargar_archivo.php pero en una pagina nueva para que no me saque del sitio pues como lo tengo me saca del sitio y no me deja volver a la sesión que tenía. si pueden ayudarme les agradecería muchisimo.

chao

Última edición por Cluster; 13/07/2006 a las 07:56
  #2 (permalink)  
Antiguo 11/07/2006, 16:33
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
No me queda del todo claro como esta el evento de "clic" para descargar el archivo.

La redireccion hacia una pagina la puedes hacer ya sea con javascript o con php

en el caso de javascript

window.location = "miarchivo.tipo";

en el caso de php

header("Location:tuarchivo.tipo");

En este caso debes tener cuidado puesto que no puede haber ninguna salida al explorador antes del header. Ya sea etiquetas tipo <html> o echo"".

Saludillos.
  #3 (permalink)  
Antiguo 11/07/2006, 16:55
Avatar de ing_aprendiz  
Fecha de Ingreso: septiembre-2005
Mensajes: 136
Antigüedad: 18 años, 7 meses
Puntos: 0
ayuda redireccion

hola estoy redireccionando en la pagina en la pagina listar_archivos de la siguiente manera:

Código PHP:
<?php 
    mysql_connect
("localhost","apsoluti_","") or die ("no se ha podido conectar a la BD"); 
    
mysql_select_db("apsoluti_kansei") or die ("no se ha podido seleccionar la BD"); 
    
$sql "SELECT id,archivo_nombre,archivo_tipo,archivo_peso FROM tablas where id_proyecto=$id_proyecto"
    
$consulta mysql_query($sql) or die ("No hay documentos para este proyecto"); 

    While (
$registro=mysql_fetch_assoc($consulta)){ 
        echo 
"<a href='descargar_tabla.php?id=$registro[id]'>Descargar</a>";
        echo 
"<br> <b>Nombre archivo: </b>".$registro['archivo_nombre']; 
        echo 
"<br> <b>Tipo archivo (MIME formato): </b>".$registro['archivo_tipo']; 
        echo 
"<br> <b>Peso: </b>".$registro['archivo_peso']." bytes.<br></br>"
    } 
?>
pero lo que necesito es que cuando le de clic sobre el vinculo descargar me muestre el contenido del archivo blob pero en otra pagina para así no salirme del sitio.

te agradezco tu atención

Última edición por Cluster; 13/07/2006 a las 07:55
  #4 (permalink)  
Antiguo 13/07/2006, 07:58
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
En principio .. podrías definir el target en el link de descarga (como en HTML común y corriente harías) ..si quieres abrir ventanas o algo así tendrías que recurrir a javascript ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 13/07/2006, 08:00
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
Hola mira lo puedes hacer asi

<?$pagina_nueva= descargar_tabla.php;?>
<a href="<?php echo $pagina_nueva;?>?id=<?php echo $registro['id'];?>">Descargar</a>

Espero que te sirva
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #6 (permalink)  
Antiguo 13/07/2006, 08:44
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
De acuerdo

Oye que pena me equivoque de codigo..

1) Creas la funcion JavaScript que controla abrira lanueva ventana (podras ver que abrira sobre toda la pantalla).

<script LANGUAGE="javascript">
function NuevaVent(link) {

var intleft=(screen.width-800)/2
var inttop=(screen.height-600)/2
var width=screen.width
var height=screen.height
if (height==768)
height=height-75
else
height=height-75
inttop=0
intleft=0
window.resizeTo(width,screen.height)
window.open(link,'m','status=no,z-lock=no,menubar=NO,toolbar=NO,location=YES,resizab le=no,hotkeys=NO,scrollbars=yes,resizable=yes,left =' + intleft + ',top=' + inttop + ',width=' + width + ',height='+ height);
//window.resizeTo(width,height-150)
//self.close();


}

</script>

2)

<? print "<a href=\"javascript:NuevaVent('descargar_tabla.php') \"";?>?id=<?php echo $registro['id'];?>">Descargar</a>

Y listo ahora si espero que te sirva jejeje

Hasta Pronto!
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #7 (permalink)  
Antiguo 13/07/2006, 08:58
Avatar de ing_aprendiz  
Fecha de Ingreso: septiembre-2005
Mensajes: 136
Antigüedad: 18 años, 7 meses
Puntos: 0
ayuda con redireccion

hola nano gracias por ayudarme la verdad que ya llevo resto de dias tratando de hacer esto y no he podido. ya hice lo que tu me indicaste pero pasa lo mismo luego de dar clic en descargar carga la pagina pero encima de la anterior y lo que necesito es que lo abra pero en otra pagina, es decir que quede abierta la pagina donde damos clic (descargar) y la pagina donde muestra el archivo que descarga, espero puedas ayudarme y disculpame si te quito mucho tiempo.

chao
  #8 (permalink)  
Antiguo 13/07/2006, 09:27
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
Hola mira e probado de nuevo el codigo que te envie y apenas oprimo sobre el link Descarga me la abre otra pantalla y me deja la anterior tambien.. Verifica bien si depronto es un error que tienes
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #9 (permalink)  
Antiguo 13/07/2006, 09:47
Avatar de ing_aprendiz  
Fecha de Ingreso: septiembre-2005
Mensajes: 136
Antigüedad: 18 años, 7 meses
Puntos: 0
ayuda con redireccion

hola nano, ya logre lo que queria ya abre las dos ventanas pero ahora tengo otro lio, porque no esta pasando el id a descargar_tabla.php lo cual me ocasiona un error en la consulta, otro error es un problema con header es decir el sistema me muestra en pantalla lo siguiente:

Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /home/apsoluti/public_html/proyectokansei/descargar_tabla.php on line 6

Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /home/apsoluti/public_html/proyectokansei/descargar_tabla.php on line 7

Warning: Cannot modify header information - headers already sent by (output started at /home/apsoluti/public_html/proyectokansei/descargar_tabla.php:6) in /home/apsoluti/public_html/proyectokansei/descargar_tabla.php on line 9

en fin el problema persiste pero esta vez por otro lado
  #10 (permalink)  
Antiguo 13/07/2006, 09:55
Avatar de Azrael666  
Fecha de Ingreso: noviembre-2004
Mensajes: 652
Antigüedad: 19 años, 5 meses
Puntos: 1
<? echo "<a href='#' onClick='NuevaVent(\"descargar_tabla.php?id=".$reg istro['id']."\");'>Descargar</a>"; ?>

a ver si asi te vale, no le estabas pasando la id dentro de la funcion...
__________________
ALOZORRO v5.0 (ahora en .es)
  #11 (permalink)  
Antiguo 13/07/2006, 10:31
Avatar de ing_aprendiz  
Fecha de Ingreso: septiembre-2005
Mensajes: 136
Antigüedad: 18 años, 7 meses
Puntos: 0
Sonrisa problema con redireccion

hola azrael666 gracias y mil gracias pues hace días que trataba de hacer esto, soy nueva en esto de la programación web pero estoy trabajando en un proyecto muy interesante y esto me ha hecho tener que mejorar mis conocimientos en php, de todas formas si me sirvio el código que me enviaste y te reitero de nuevo las gracias

chao
  #12 (permalink)  
Antiguo 13/07/2006, 10:37
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
De acuerdo

Cita:
Iniciado por Azrael666
<? echo "<a href='#' onClick='NuevaVent(\"descargar_tabla.php?id=".$reg istro['id']."\");'>Descargar</a>"; ?>

a ver si asi te vale, no le estabas pasando la id dentro de la funcion...
Oye gracias por el aporte ..
__________________
:.:Nano.:: @nano_hard - Retornando al foro
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 19:30.