Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-12-2005
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 24
kayetano Va por buen camino
Hola

No se, no se, no creo que te funcione como funcion, crea un archivo y llamalo como te he indicado antes.
Código PHP:
<img src="ver_imagen.php?id=1"
Siendo "ver_imagen.php" el archivo con el script que muestre la imagen.
Te explico el porque, las cabeceras se deben mostrar al principio de cualquier comunicacion http, antes de enviar nada, por lo tanto si empiezas a cargar código HTML o la primera imagen o cualquier cosa, ya no puedes enviar otra cabecera en el mismo script php (no se si me explico). Debes realizar varias llamadas a un mismo archivo (esto generará diferentes conexiones HTTP) y no a una funcion.
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente
Responder Con Cita
  #2  
Antiguo 21-12-2005
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 21
papulo Va por buen camino
Vale, ya lo entiendo.

Lo he hecho y funciona perfectamente. Postearia el codigo, pero mi autoestima tiene un limite de vapuleo, y hoy me han dado pero bien de bien (para mejorar, lo se lo se).

Vale, aun asi me siento masoca, ahi va:

Este es Imagenes.html, quiero mostrar dos imagenes de la DB.
Código PHP:
<!doctype html public "-//W3C//DTD HTML 4.01//EN">

<
html>

   <
head>
      <
title>Imagenes</title>
   </
head>

   <
body>
<
img src="Imagenes2.php?id=1"><br>
<
img src="Imagenes2.php?id=2">

   </
body>
</
html
Y aqui esta Imagenes2.php, se encarga de realizar la consulta a la BD en funcion del identificador que le paso previamente desde la otra pagina, capturar el elemento de la DB y mostrar el campo BLOB deseado.

Código PHP:
<?php
 
/* Mandando las cabeceras de la imagen */
  
Header("Content-type: image/jpg");
  include(
"libreria_web.php");
 
/* Verificando la existencia de la imagen */
  
$query=("SELECT RESOURCE_ID, RESOURCE FROM RESOURCES WHERE RESOURCE_ID=$id");
  
$consulta=consulta_bd($query);
  
$fila ibase_fetch_object ($consulta);
  
ibase_blob_echo($fila->RESOURCE);
?>
Gracias tios, si algun dia hacemos una quedada os invito a unas rondas por compartir informacion.

Saludetes.
Responder Con Cita
  #3  
Antiguo 21-12-2005
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 24
kayetano Va por buen camino
Hola

Ok, ahora podrías pulir un poco mas Imagenes2.php, por ejemplo:
- Añadir las cabeceras y tamaño y nombre de la imagen.
- Controlar que el ID es correcto y existe dentro de tu base de datos.
- Filtrar la variable $id para eliminar codigo malicioso.

Y si te quieres complicar la vida puedes utilizar las librerías GD para recortar y redimensionar las imagenes.

PD no te mosquees, el problema es que yo soy muy exigente con todo.
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente
Responder Con Cita
  #4  
Antiguo 21-12-2005
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 21
papulo Va por buen camino
Cita:
Empezado por kayetano
Ok, ahora podrías pulir un poco mas Imagenes2.php, por ejemplo:
- Añadir las cabeceras y tamaño y nombre de la imagen.
Esta informacion no la necesito, ¿es realmente necesaria?
Cita:
Empezado por kayetano
- Controlar que el ID es correcto y existe dentro de tu base de datos.
Esto es una practica que tengo que adoptar pero a la de ya mismo, siempre implemento las funciones y me olvido de añadir el codigo para comprobar que ha fallado, y por supuesto, si falla, no me entero nunca de donde.
Cita:
Empezado por kayetano
- Filtrar la variable $id para eliminar codigo malicioso.
Esto simplemente no tengo ni papa, ¿que quieres decir exactamente?

Cita:
Empezado por kayetano
PD no te mosquees, el problema es que yo soy muy exigente con
todo.
No me mosqueo, para nada, agradezco el esfuerzo de todos y cada uno respondiendome.

Saludos.

Papulo.
Responder Con Cita
  #5  
Antiguo 21-12-2005
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 24
kayetano Va por buen camino
Cita:
Empezado por papulo
Esta informacion no la necesito, ¿es realmente necesaria?
Hombre .... puestos a trabajar poco te diré que no es totalmente necesario, pero yo soy de los que si hago algo quiero hacerlo bien, ademas:
- no cuesta nada poner las cabeceras
- estas aprendiendo y nunca biene mal conocer mas sobre las cabeceras.
- igual en un futuro lo necesitas y ya lo tienes hecho.
- cuanta mayor información proporciones mejor para el navegador (y las compatibilidades).

Cita:
Empezado por papulo
Esto es una practica que tengo que adoptar pero a la de ya mismo, siempre implemento las funciones y me olvido de añadir el codigo para comprobar que ha fallado, y por supuesto, si falla, no me entero nunca de donde.
Este punto no es aconsejable, es que casi es obligatorio.

Cita:
Empezado por papulo
Esto simplemente no tengo ni papa, ¿que quieres decir exactamente?
En internet existe gente que se aburre mucho, y de vez encuando uno de esos pasa por tu web y le da por trastearla o juguetear con ella.
Las tecnicas mas normales son intentar meter codigo, ya sea PHP o SQL, en las variables conocidas, en tu caso $id. Yo utilizo algunas funciones dependiendo del nivel de seguridad que necesite, por ejemplo
Código PHP:
    function seguridad$valor ) {
        return 
addslashesstrip_tags$valor ) );
    } 
Con esto eliminas tags y añades comillas a todo lo que sea necesario, algo facil para empezar. Con esto puedes filtrar cualquier variable que no tenga una procedencia segura.
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente
Responder Con Cita
  #6  
Antiguo 21-12-2005
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 21
papulo Va por buen camino
Talking

Cita:
Empezado por kayetano
Hombre .... puestos a trabajar poco te diré que no es totalmente necesario, pero yo soy de los que si hago algo quiero hacerlo bien, ademas:
- no cuesta nada poner las cabeceras
- estas aprendiendo y nunca biene mal conocer mas sobre las cabeceras.
- igual en un futuro lo necesitas y ya lo tienes hecho.
- cuanta mayor información proporciones mejor para el navegador (y las compatibilidades).
Okis. Capto el mensaje, pero un ultimo favor con este tema. He mirado la ayuda oficial de PHP, esta funcion sale, pero la explicacion me deja un poco , asi que si me tuvieras que explicar por primera vez el tema de las cabeceras, ¿como lo harias? (si tienes un enlace que lo explique bien, lo pones y lo leo gustosamente)
Cita:
Empezado por kayetano
En internet existe gente que se aburre mucho, y de vez encuando uno de esos pasa por tu web y le da por trastearla o juguetear con ella.
Las tecnicas mas normales son intentar meter codigo, ya sea PHP o SQL, en las variables conocidas, en tu caso $id. Yo utilizo algunas funciones dependiendo del nivel de seguridad que necesite, por ejemplo
Código PHP:
         function seguridad$valor ) {
             return 
addslashesstrip_tags$valor ) );
         } 
Con esto eliminas tags y añades comillas a todo lo que sea necesario, algo facil para empezar. Con esto puedes filtrar cualquier variable que no tenga una procedencia segura.
la variable $valor supongo que es la que paso del .html al .php ¿cierto? Es que tal y como lo has puesto, se que pone, como va, pero no se cuando la llamas.

Asias neng.

Papulo.

EDITADO: Lo siento si soy cansino preguntando, pero es que la programacion, cada dia me resulta mas y mas fascinante, eso unido a mi personalidad curiosa, hacen una combinacion explosiva. ¡Jejejeje!
Acabo de leerme las funciones addslashes y strip_tags en la ayuda de PHP, la primera sirve para anteponer la "\" a ciertos caracteres y la otra para eliminar las etiquetas HTML y PHP de la cadena dada. Aunque no entiendo bien el concepto de "seguridad" que le das a la web con esa funcion. Lo de introducir codigo en mi pagina a traves del navegador si me ha quedado claro.

REEDITO: ¿Cual es tu definion de "variable que no tenga una procedencia segura"? Y ya puestos, la de variable segura se agradeceria tambien.

Última edición por papulo fecha: 21-12-2005 a las 17:49:34.
Responder Con Cita
  #7  
Antiguo 21-12-2005
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 24
kayetano Va por buen camino
Hola
Cita:
Empezado por papulo
Okis. Capto el mensaje, pero un ultimo favor con este tema. He mirado la ayuda oficial de PHP, esta funcion sale, pero la explicacion me deja un poco , asi que si me tuvieras que explicar por primera vez el tema de las cabeceras, ¿como lo harias? (si tienes un enlace que lo explique bien, lo pones y lo leo gustosamente)
Algunos respuestas mas arriba te explicaban el concepto de cabecera, pero probaré a darte una explicación.
Las cabeceras sirven para proporcionar información al navegador ¿que tipo de información? pues hay cabeceras de todo tipo y color, desde indicar el nombre de un archivo/imagen a solicitar al navegador que no coga la pagina de la cache, version del protocolo HTTP, y más.
En tu caso como poco habría que indicar tres cabeceras:
- Nombre.
- Tamaño.
- Tipo (este es la que has puesto).

Cita:
Empezado por papulo
la variable $valor supongo que es la que paso del .html al .php ¿cierto? Es que tal y como lo has puesto, se que pone, como va, pero no se cuando la llamas.
vale, yo lo utilizo asi:
Código PHP:
  ...
  
$id seguridad$id );
  ... 
Claro esta antes de utilizar ese valor.
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente
Responder Con Cita
  #8  
Antiguo 12-01-2006
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 24
kayetano Va por buen camino
Hola

hoy buscando cosas en el foro he encontrado estas preguntas y paso a contestar.

Cita:
Empezado por papulo
REEDITO: ¿Cual es tu definion de "variable que no tenga una procedencia segura"? Y ya puestos, la de variable segura se agradeceria tambien.
Cualquier variable con la que trabajes que porceda del exterior de tu página ya sea POST, GET, COOKIE, ... es una variable no segura, ¿por que? porque cualquier persona puede meter codigo, ¿que código? codigo SQL o PHP ¿como evitarlo? o lo eliminas o lo marcas como texto puro y duro.
Entonces una variable segura es aquella que, viniendo de fuera, ha sido filtrada o aquella que solo se usa internamente y que no se puede modificar desde el exterior de la página, por ejemplo sesiones, variables definidas en una funcion, variables definidas en cuarquier parte del PHP pero que son desconocidas para el usuario de la página (estas se puede decir que son de riesgo)
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente

Última edición por kayetano fecha: 14-06-2006 a las 10:22:23.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 22:53:14.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi