Ver Mensaje Individual
  #362 (permalink)  
Antiguo 01/07/2006, 05:15
Raules
 
Fecha de Ingreso: mayo-2005
Ubicación: Murcia
Mensajes: 319
Antigüedad: 19 años, 7 meses
Puntos: 0
Cluster, me va a la perfeccion subir los archivos y un campo de texto. Pero a lo mejor da el caso que solamente quiero subir el texto y no el archivo que codigo tengo que quitar en insertar.php para que lo suba haga la funcion bien..

Tengo el codigo:

Código PHP:
<?php 
//Primero, arranca el bloque PHP y checkea si el archivo tiene nombre.  Si no fue asi, te remite de nuevo al formulario de inserción: 
// No se comprueba aqui si se ha subido correctamente. 
if (empty($_FILES['archivo']['name'])){ 
header("location: admin_soporte_detalles.php?proceso=falta_indicar_fichero"); //o como se llame el formulario .. 
exit; 


//establece una conexión con la base de datos. 
$conexion mysql_connect("localhost","xxx","xxx") or die("No se pudo realizar la conexion con el servidor."); 
mysql_select_db("xxx",$conexion) or die("No se puede seleccionar BD"); // tu_bd es el nombre de la Base de datos .. por siaca. 



// archivo temporal (ruta y nombre). 
$binario_nombre_temporal=$_FILES['archivo']['tmp_name'] ; 

// leer del archvio temporal .. el binario subido. 
// "rb" para Windows .. Linux parece q con "r" sobra ... 
$binario_contenido addslashes(fread(fopen($binario_nombre_temporal"rb"), filesize($binario_nombre_temporal))); 

// Obtener del array FILES (superglobal) los datos del binario .. nombre, tabamo y tipo. 
$binario_nombre=$_FILES['archivo']['name']; 
$binario_peso=$_FILES['archivo']['size']; 
$binario_tipo=$_FILES['archivo']['type']; 

//insertamos los datos en la BD. 
$consulta_insertar "INSERT INTO soporte (ticket,id,comentario_cliente,archivo_binario,archivo_nombre,archivo_peso,archivo_tipo,fecha) VALUES ('','$id','$comentario_cliente', '$binario_contenido', '$binario_nombre', '$binario_peso', '$binario_tipo',NOW())"
mysql_query($consulta_insertar,$conexion) or die("No se pudo insertar los datos en la base de datos."); 
header("location: $HTTP_REFERER");  // si ha ido todo bien 
exit; 
?>
Que lo inserta todo bien pero si le quito
Código PHP:
if (empty($_FILES['archivo']['name'])){ 
header("location: admin_soporte_detalles.php?proceso=falta_indicar_fichero"); //o como se llame el formulario .. 
exit; 

Me sale un error:
Código:
Warning: fread(): supplied argument is not a valid stream resource in /home/xxx/public_html/clientes/admin/admin_soporte_procesar.php on line 14

Warning: Cannot modify header information - headers already sent by (output started at /home/xxx/public_html/clientes/admin/admin_soporte_procesar.php:14) in /home/xxx/public_html/clientes/admin/admin_soporte_procesar.php on line 24
Habria alguna posibilidad en este script hacer eso?