Foros del Web » Programando para Internet » PHP »

error fread() en upload de imagen a base de datos

Estas en el tema de error fread() en upload de imagen a base de datos en el foro de PHP en Foros del Web. hola utilize un script publicado aca sobre upload, con algunas pequeñasmodificaciones. Código PHP: <?php if (empty( $_FILES [ 'archivo' ][ 'name' ])){  header ( "location: formulario.php?proceso=falta_indicar_fichero" );  ...
  #1 (permalink)  
Antiguo 03/10/2007, 19:10
 
Fecha de Ingreso: mayo-2003
Mensajes: 37
Antigüedad: 20 años, 11 meses
Puntos: 0
Pregunta error fread() en upload de imagen a base de datos

hola
utilize un script publicado aca sobre upload, con algunas pequeñasmodificaciones.

Código PHP:
<?php
if (empty($_FILES['archivo']['name'])){ 
header("location: formulario.php?proceso=falta_indicar_fichero"); //o como se llame el formulario .. 
exit;

include 
"../conexion.php";
$binario_nombre_temporal=$_FILES['archivo']['tmp_name']; 
$binario_contenido addslashes(fread(fopen($binario_nombre_temporal"rb"), filesize($binario_nombre_temporal)));
$binario_nombre=$_POST['codigo']."-".$_FILES['archivo']['name'];
$binario_peso=$_FILES['archivo']['size'];
$binario_tipo=$_FILES['archivo']['type'];
$consulta_insertar "INSERT INTO archivos (id, archivo_binario, archivo_nombre, archivo_peso, archivo_tipo) VALUES ('', '$binario_contenido', '$binario_nombre', '$binario_peso', '$binario_tipo')";
mysql_query($consulta_insertar,$conexion) or die("No se pudo insertar los datos en la base de datos.");
header("location: listar_imagenes.php");  // si ha ido todo bien 
exit;
?>
Me funciona bien ahi. Pero al integrarlo a mi formulario me sale este error:

Código:
Warning: fread(): supplied argument is not a valid stream resource in D:\servidor\web\dim\ingreso.php on line 29
la linea 29:
Código PHP:
$binario_contenido addslashes(fread(fopen($binario_nombre_temporal"rb"), filesize($binario_nombre_temporal))); 
no son permisos, pq estoy utilizando esto en local y el ejemplo me funciona bien.
los campos en la tabla de la base de datos son identicos (cambie blob por mediumblob). Es necesario guardar el tipo y el size?

AYUDA URGENTE PORFAVOR!!!!
  #2 (permalink)  
Antiguo 03/10/2007, 23:16
 
Fecha de Ingreso: agosto-2007
Ubicación: Mexico
Mensajes: 55
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: error fread() en upload de imagen a base de datos

checate este articulo y si no se resulve tu duda me avisas ok suerte

http://blog.deliriumlabs.net/2007/08...n-php-y-mysql/
  #3 (permalink)  
Antiguo 04/10/2007, 11:14
 
Fecha de Ingreso: mayo-2003
Mensajes: 37
Antigüedad: 20 años, 11 meses
Puntos: 0
Re: error fread() en upload de imagen a base de datos

no cacho q tiene que ver... pero igual probe el script y me salio este error:

Parse error: syntax error, unexpected ';' in D:\servidor\web\test\upload.php on line 5

LINEA 5: if ($bytes &lt;1024){

lei por ahora q error de fread, pero no exactamente el que me sale ami, es por enviar cadenas vacias.... pero lo raro es q puse el mismo codigo en otra pagina y me aparece el error, el ejemplo funciona perfecto donde esta!!!
  #4 (permalink)  
Antiguo 05/10/2007, 09:57
 
Fecha de Ingreso: mayo-2003
Mensajes: 37
Antigüedad: 20 años, 11 meses
Puntos: 0
Pregunta Re: error fread() en upload de imagen a base de datos

Bueno, ya he resuelto el problema.
Para variar era algo estupido.
Como solo pase el codigo php me olvide de las propiedades del formulario y faltaba esto:

enctype="multipart/form-data

logicamente no me iba a tomar el archivo. Ya lo probe y ya me sube la foto.

Ahora necesito guardarla en un tamaño especifico. alguna idea simple???

Ah, ademas quiero que el nombre de la foto que estoy subiendo se guarde con el valor de otra variable, que el usuario ingresó en otro campo de texto, como lo tengo aca:

Código PHP:
$binario_nombre=$_POST['folio']'._.'$_FILES['esquema']['name']; 
pero si le saco :$_FILES['esquema']['name'], pierdo la extension. Debo colocar: $_FILES['esquema']['type'] ???

es para antes de ayer :S
ayudenme plis!
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 00:09.