Foros del Web » Programando para Internet » PHP »

ruta absoluta

Estas en el tema de ruta absoluta en el foro de PHP en Foros del Web. amigos una consuta alguien sabe como puedo obtener la ruta absoluta de un archivo que se encuentra almacenado en mi base de datos mysql por ...

  #1 (permalink)  
Antiguo 21/11/2012, 12:15
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Sonrisa ruta absoluta

amigos una consuta alguien sabe como puedo obtener la ruta absoluta de un archivo que se encuentra almacenado en mi base de datos mysql

por favor de ante mano muchas gracias
  #2 (permalink)  
Antiguo 21/11/2012, 12:24
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: ruta absoluta

realpath
  #3 (permalink)  
Antiguo 21/11/2012, 12:44
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

estimado gatorV muchas gracias por la respuesta pero la verdad que no entiendo como lo puedo usar para que me la ruta absoluta de mi archivo que se encuentra almacenado en mi base de datos mysql

alguna ayudit please???
  #4 (permalink)  
Antiguo 21/11/2012, 12:46
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: ruta absoluta

Si el archivo está almacenado en la base de datos... pues esto, está en la base de datos.. . xDD

¿O tienes almacenada una ruta?
__________________
>> Eleazan's Source
>> @Eleazan
  #5 (permalink)  
Antiguo 21/11/2012, 13:08
Avatar de DeivisAndres  
Fecha de Ingreso: febrero-2012
Ubicación: Colombia
Mensajes: 305
Antigüedad: 12 años, 2 meses
Puntos: 41
Respuesta: ruta absoluta

Mejor explícate, que tipo de archivo quieres tener la ruta si es de imagen o un .txt, .cvs etc...
  #6 (permalink)  
Antiguo 21/11/2012, 13:25
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

ok mira me explico mejor

tengo el index.php

el cual contiene un formulario que sube un archivo pdf a la base de datos esto funciona bien el archivo lo guarda

ahora tengo el ver.php

el cual contiene otro formulario que tiene unos textbox y un select el cual se llena de otr tabla que se llama cursos y la tabla cursos esta asociada a los pdf que acabamos de subir

entonces si el usuario selecciono el curso 1 necesito que se muestre el pdf del curso 1 pero dentro del html no que lo descargue

se que esto se puede hacer con un <iframe src="ruta absoluta bla bla bla"/> pero no tengo idea de como saber esa tura absoluta de ese pdf que acabo de guardar en la base de datos

no se si ahora me explique mejor
  #7 (permalink)  
Antiguo 21/11/2012, 13:35
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 2 meses
Puntos: 155
Respuesta: ruta absoluta

cuando guardas ese pdf lo haces en una ruta especifica , de ahi podrias tomarla
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #8 (permalink)  
Antiguo 21/11/2012, 13:43
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

pero cuando la guardo me dice c:/ bla bla bla y me dice lo siguiente

La dirección no resulta comprensible







Firefox no sabe cómo abrir esta dirección, porque el protocolo (c) no está asociado con ninguna aplicación.





Podría necesitar instalar otro software para abrir esta
dirección.
  #9 (permalink)  
Antiguo 21/11/2012, 13:44
Avatar de DeivisAndres  
Fecha de Ingreso: febrero-2012
Ubicación: Colombia
Mensajes: 305
Antigüedad: 12 años, 2 meses
Puntos: 41
Respuesta: ruta absoluta

Lo que puedes hacer es que cuando este guardando el archivo pdf cojas la ruta y la guardes también, por que el archivo lo estas guardando en un carpeta verdad, como este tema te puede servir de guia: Guardar ruta de archivo y descargarlo de bd
  #10 (permalink)  
Antiguo 21/11/2012, 13:45
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 2 meses
Puntos: 155
Respuesta: ruta absoluta

pon el código con el que guardas tu archivo en el servidor , recuerda usar el hightligth pa que se vea formateado
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #11 (permalink)  
Antiguo 21/11/2012, 14:10
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: ruta absoluta

¿Guardas en tu BDD la ruta? ¿o el contenido en binario?
  #12 (permalink)  
Antiguo 21/11/2012, 14:34
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

gatorV guardo el contenido en binario no guardo la ruta
  #13 (permalink)  
Antiguo 21/11/2012, 16:20
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: ruta absoluta

En ese caso no puedes apuntar el iframe directamente al archivo, tienes que hacer un archivo PHP intermedio donde le pases el ID de la fila donde esta el contenido y entonces hagas un dump del contenido del PDF con las cabeceras correctas.

Saludos.
  #14 (permalink)  
Antiguo 22/11/2012, 07:03
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

muchas gracias gatorV lo pude solucionar dejo el codigo asi es que a alguin se sirve

Código PHP:
 <?php
 
include("dbconnect.inc.php");
$ide1=$_GET["id"];

    
$busqueda mysql_query("SELECT contenido FROM archivos WHERE contenido= '".$ide1."'"
                or die (
'Error al seleccionar la Base de Datos: '.mysql_error());
                 
$pdf mysql_fetch_array($busqueda);
                echo 
'<embed src="'.$pdf[0].'" width="500" height="600"></embed>';
                
?>
muchas gracias a todos

saludos
  #15 (permalink)  
Antiguo 22/11/2012, 07:46
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
problemas embed o iframe

amigos pense que ya lo tenia solucionado pero me arroga un problema tengo el siguiente codigo para subir archivos

Código PHP:
<?
require("dbconnect.inc.php");

$archivo $_FILES["archivito"]["tmp_name"];
$tamanio $_FILES["archivito"]["size"];
$tipo    $_FILES["archivito"]["type"];
$nombre  $_FILES["archivito"]["name"];
$titulo  $_POST["titulo"];

if ( 
$archivo != "none" )
{
$fp fopen($archivo"rb");
$contenido fread($fp$tamanio);
$contenido addslashes($contenido);
fclose($fp);

$Query "INSERT INTO archivos (nombre, titulo, contenido, tipo)"."VALUES ('$nombre', '$titulo', '$contenido', '$tipo')";

mysql_query($Query) or die ('Error, no consulta');

if(
mysql_affected_rows($conn) > 0)
print 
"Se ha guardado el archivo en la base de datos.";
else
print 
"NO se ha podido guardar el archivo en la base de datos.";
}
else
print 
"No se ha podido subir el archivo al servidor";
        
?>
lo cual funciona muy bien despues de eso listo los datos que acabo de subir asi

Código PHP:
<?php

require("dbconnect.inc.php");

$qry "SELECT * FROM archivos";
$res mysql_query($qry);

while(
$fila mysql_fetch_array($res))
{
print 
"$fila[titulo]
<br>
$fila[nombre] ($fila[tipo])
<br>
<a href='ver.php?id="
.$fila['id']."'>Descargar</a>
<br>
<br>"
;
}
?>
y final mente quiero mostrar los datos dentro del html de la pagina y aqui vienen el problema es que cuando pongo la etiqueta embled me salen solo garabatos por pantalla y no el pdf pero si pongo iframe me dice solicitud erronea error 400 no se me ocurre como solucionarlo no si si alguien me puede ayudar el codigo que uso es el siguiente

Código PHP:
 <?php
 
include("dbconnect.inc.php");
$ide1=$_GET["id"];

    
$busqueda mysql_query("SELECT archivos.contenido FROM archivos WHERE archivos.id= '".$ide1."'"
                or die (
'Error al seleccionar la Base de Datos: '.mysql_error());
                 
$pdf mysql_fetch_array($busqueda);
                echo 
'<iframe src="'.$pdf[0].'" width="500" height="600"/></iframe>';
?>
antes que se me olvide mi base de datos es mysql y esta es la estructura

Código:
Estructura de tabla para la tabla `archivos`
--

CREATE TABLE IF NOT EXISTS `archivos` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nombre` varchar(100) NOT NULL,
  `titulo` varchar(100) NOT NULL,
  `contenido` blob NOT NULL,
  `tipo` varchar(100) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
de ante mano muchas gracias
  #16 (permalink)  
Antiguo 22/11/2012, 11:13
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: problemas embed o iframe

Lo que pasa es que tienes que descargar el archivo en binario, esto lo haces con la etiqueta header, pero tendrías que hacer dos cosas, primero apuntar tu iframe a un archivo PHP y pasarle el ID que quieres sacar, luego dentro del iframe pones el embed igual apuntando a otro archivo PHP, este va a ser el que haga el dump del contenido en binario, y haces algo así:

Código PHP:
Ver original
  1. // conectas, y seleccionas el row
  2. $contenido = $row['filaconelcontenido'];
  3.  
  4. header ('Content-type: application/pdf');
  5. echo $contenido;
  6. die();

No puede haber nada antes de tu etiqueta de apertura (<?php) para que puedas enviar la cabecera correctamente y el contenido binario.

Saludos.
  #17 (permalink)  
Antiguo 22/11/2012, 12:08
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: problemas embed o iframe

Cita:
Iniciado por GatorV Ver Mensaje
Lo que pasa es que tienes que descargar el archivo en binario, esto lo haces con la etiqueta header, pero tendrías que hacer dos cosas, primero apuntar tu iframe a un archivo PHP y pasarle el ID que quieres sacar, luego dentro del iframe pones el embed igual apuntando a otro archivo PHP, este va a ser el que haga el dump del contenido en binario, y haces algo así:

Código PHP:
Ver original
  1. // conectas, y seleccionas el row
  2. $contenido = $row['filaconelcontenido'];
  3.  
  4. header ('Content-type: application/pdf');
  5. echo $contenido;
  6. die();

No puede haber nada antes de tu etiqueta de apertura (<?php) para que puedas enviar la cabecera correctamente y el contenido binario.

Saludos.
muchas gracias gatorV pero la verdad que no entendi mucho como veras soy un poco nuevo en esto de php y esto de subir archivos a la bd y mostrarlos solo comence el este martes por lo que no soy muy entendido en el tema por casualidad y mi intencion no es aprovecharme sino que solucionar el problema tendras el codigo completo de lo que me acabas de decir para poder entender mejor

muchas gracias
  #18 (permalink)  
Antiguo 22/11/2012, 13:49
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: ruta absoluta

Es lo mismo que el tuyo, simplemente que en lugar de imprimirlo en un embed, haces el header para forzar al browser a mostrar el documento.

Saludos.
  #19 (permalink)  
Antiguo 22/11/2012, 14:02
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

Cita:
Iniciado por GatorV Ver Mensaje
Es lo mismo que el tuyo, simplemente que en lugar de imprimirlo en un embed, haces el header para forzar al browser a mostrar el documento.

Saludos.
hice lo que me dijiste pero sale un mensaje por pantalla que dice el archivo no empeza por '$PDF'
  #20 (permalink)  
Antiguo 22/11/2012, 14:05
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: ruta absoluta

Revisa el contenido binario que tienes en la base de datos, a lo mejor lo estas codificando mal.

Saludos.
  #21 (permalink)  
Antiguo 22/11/2012, 14:10
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

Cita:
Iniciado por GatorV Ver Mensaje
Revisa el contenido binario que tienes en la base de datos, a lo mejor lo estas codificando mal.

Saludos.
mira esto es lo que tengo en la base de datos



no se me ocurre como hacerlo y con lo que tu me dijiste lo deje asi mira

listar_archivos.php

Código PHP:
<?php

require("dbconnect.inc.php");

$qry "SELECT * FROM archivos";
$res mysql_query($qry);

while(
$fila mysql_fetch_array($res))
{
print 
"$fila[titulo]
<br>
$fila[nombre] ($fila[tipo])
<br>
<a href='ver.php?id="
.$fila['id']."'>Descargar</a>
<br>
<br>"
;
}
?>
y el que deberia mostrarme el pdf por pantalla es este

ver.php

Código PHP:
 <?php
 
include("dbconnect.inc.php");
 
$ide2=$_GET["id"];

    
$busqueda mysql_query("SELECT archivos.contenido FROM archivos WHERE archivos.id= '".$ide2."'"
                or die (
'Error al seleccionar la Base de Datos: '.mysql_error());
                
$pdf mysql_fetch_array($busqueda);
                
$contenido $pdf['contenido'];
                
header ('Content-type: application/pdf');
                echo 
$contenido;
                die();
?>
  #22 (permalink)  
Antiguo 23/11/2012, 08:55
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

amigos yo denuevo aun no puedo solucionar mi problema

gatorV te comento que no se ocmo puede revisar el contenido binario si esta bien o no ya que uso tu sistema de subir archivos binarios posteado en fdw

ayuda plis alguien que tenga lo que yo necesito

de ante mano muchas gracias

saludos desde chile
  #23 (permalink)  
Antiguo 23/11/2012, 09:52
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: ruta absoluta

Comenta la línea de header() así vas a imprimir el contenido como tal y revisa si el contenido esta correcto.

Saludos.
  #24 (permalink)  
Antiguo 23/11/2012, 10:06
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

amigo hice lo que me dijiste de comentar la linea del header y me sale lo siguiente:

%PDF-1.2 %âãÏÓ 8 0 obj << /Length 9 0 R /Filter /FlateDecode >> stream H‰M=Â0 FO;x,CMìô'Ó¤ˆH¥E%œ $F®O›ˆ‚¼Xþžß×EAd°m V-ª z!a×Äþ [$^îwQJ”’Ͳߖâ œ Ó¸ƒøL±Ñ*Å %ÊþÏP¬¡TM*K$ú—Z c¸Äù«¥Jg °¿¶ W!ošJòV^βóµ

nu se que hacer
  #25 (permalink)  
Antiguo 23/11/2012, 10:45
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: ruta absoluta

Pues es correcto, debe de empezar con %PDF-1. entonces más bien el plugin que usas para leer el PDF es el que tiene el problema.

Saludos.
  #26 (permalink)  
Antiguo 23/11/2012, 12:05
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

Cita:
Iniciado por GatorV Ver Mensaje
Pues es correcto, debe de empezar con %PDF-1. entonces más bien el plugin que usas para leer el PDF es el que tiene el problema.

Saludos.
lo que pasa es que me parece extraño por que se uso solo html con la etiqueda embed y el pdf alojado en la carpeta raiz del sistema y el pdf se ve entonces no entiendo por que si lo estoy descargando de la base de datos y mostrando dentro del html no se puede ver

  #27 (permalink)  
Antiguo 23/11/2012, 12:11
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

Cita:
Iniciado por GatorV Ver Mensaje
Pues es correcto, debe de empezar con %PDF-1. entonces más bien el plugin que usas para leer el PDF es el que tiene el problema.

Saludos.
es que me parece extraño por qu cuanmdo uso la etiqueta embed y tengo alojado el pdf dentro de la carpeta raiz del proyecto y se ve entonces no entiendo si es el plug in
  #28 (permalink)  
Antiguo 23/11/2012, 12:21
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

mira amigo ayer me dijiste que tenia que hacer un iframe y dentro de ese iframe un embed ambos mirando a distintos archivos php y a uno de ellos le tngo qu epasar la id y esto fue lo que hice sugun lo yo te entendi no se si estoy bien o no

listar_archivos.php

Código PHP:
<?php

require("dbconnect.inc.php");

$qry "SELECT * FROM archivos";
$res mysql_query($qry);

while(
$fila mysql_fetch_array($res))
{
print 
"$fila[titulo]
<br>
$fila[nombre] ($fila[tipo])
<br>
<a href='nuevo1.php?id1="
.$fila['id']."'>Descargar</a>
<br>
<br>"
;
}
?>
nuevo1.php

Código PHP:
<?php
include("dbconnect.inc.php");
$ide5=$_GET["id1"];

echo 
"<iframe src='ver.php' width='500' height='600'>
     <embed src='nuevo.php' width='500' height='600'></embed></iframe>"

?>

nuevo.php

Código PHP:
<?php
 $ide2
=$_GET["id"];
?>

ver.php

Código PHP:
 <?php
 
include("dbconnect.inc.php");
 
$ide2=$_GET["id"];

    
$busqueda mysql_query("SELECT archivos.contenido FROM archivos WHERE archivos.id= '".$ide2."'"
                or die (
'Error al seleccionar la Base de Datos: '.mysql_error());
                
$pdf mysql_fetch_array($busqueda);
                
$contenido $pdf[0];
                
header ('Content-type: application/pdf');
                echo 
$contenido;
                die();
?>
corrijeme porfavor que es lo que tengo mal, de ante mano muchas gracias
  #29 (permalink)  
Antiguo 23/11/2012, 13:27
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: ruta absoluta

Prueba apuntarlo directo a la direccion del iframe, es decir:
Código HTML:
Ver original
  1. <iframe src="archivoquedescargaelpdf.php?id=eliddelrow"></iframe>
  #30 (permalink)  
Antiguo 23/11/2012, 13:58
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ruta absoluta

amigo si hago eso me sale un mensaje por pantalla que que el documento no comienza por %pdf-


Etiquetas: embed, html, iframe, mysql, ruta, sql, tabla
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 21:34.