Ver Mensaje Individual
  #11 (permalink)  
Antiguo 05/04/2005, 09:22
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
no se puede enviar header tantos jpg como para texto para que funcionen, no entiendo mucho lo de lo headers, lo unico que se es que me funcionan para redirecionar con lo de header("Location:..."), pero bueh que debo hacer para poder guardar en la db?
No, .. la función header() de PHP simplemente sirve para enviar cabeceras HTTP al navegador (cliente mejor dicho) .. que tipo de cabeceras envies a este y que haga este con ellas es otra cosa.

De hecho la cabecera más típica usada de HTTP es la de "Location" que indica "redirección" (o dicho de otra forma le dice a tu navegador: "oye, cargate esta página que te indico aquí .. desecha lo otro que se esté viendo").

Pero, .. como cabeceras HTTP . .otras son por ejemplo las de "content-type" que le dicen al navegador: "Los datos que te voy a enviar son de tal tipo .. ajustate para que se vea o se interprete bien ...".

----------------

Sobre el problema concreto de almacenar esa imagen generda ..

Usando el control del buffer de PHP (como te comentaba antes .. ):

1) No uses header("Content-type") .. (realmente no sé si quieres ver el resultado y guardar en tu BD en el instante o vas a tener un script que mostrará un "previo" y de ahí se tenga que realizar el proceso de almacenamiento en tu BD si se acepta .. pues sería lo lógico).

2) Todo esto no corresponde .. se supone que la imagen la obtienes de TU BD .. así que no sé por qué la lees de un archivo (fread() si este no existe:
Código PHP:
// elimila todo esto ... 
$binario_contenido addslashes(fread(fopen($imagen_volteada"r"), filesize($imagen_volteada))); 
    
$binario_peso=$_FILES[$imagen_volteada]['size']; 
    
$binario_tipo=$_FILES[$imagen_volteada]['type']; 
3) NO sé si vas a actualizar el registro que contiene tu imagen (mal) con el volteo aplicado o crear un nuevo registro .. pero si es lo primero no corresponde hacer un INSERT sino un UPDATE bajo ese $_GET['id'] de imagen.

4) Captura en el buffer el resultado de la función de volteo ...

Código PHP:
ob_start();
// $imagen_volteada = imagejpeg($dst_img,'',100);  <-- quita esto
imagejpeg($dst_img,'',100); 

$binario_contenido ob_get_contents();
ob_end_clean(); 
5) Por aquí ya puedes hacer tu UPDATE o INSERT con $binario_contenido

Recuerda que este script que haga este proceso se ha de ejecutar por separado .. nada de mezclaro con otras cosas. De hecho al terminar el proceso tendrías que redireccionar automáticamente a donde gustes:

Código PHP:
header("Location: nose.php");
exit; 
Por eso .. si quieres hacer un "previo" de como queda tu imagen volteada (en diferentees angulos) tendrás que tener dos scripts .. uno para ese "previo" y otro para el proceso de guardar a tu BD el resultado aplicacando exactamente lo mismo .. pero sin el "content-type" de header() y otro HTML que uses por médio ..

Cuando se usan cabeceras HTTP .. nos e pueden enviar otras cabeceras antes al navegador .. por eso es necesario separar procesos en scripts aparte que se van llamando de unos a otros ..

Un saludo,