No me inserta la id del usuario en la base de datos. En la columna id_user de la tabla images está vacía, y no se que puedo hacer.
Este es mi formulario:
<?php session_start(); ?>
<HTML>
<HEAD>
<TITLE>Binario a BD</TITLE>
</HEAD>
<BODY>
<?php
if (isset($_GET['proceso'])){
echo $_GET['proceso']."<br>";
}
?>
<FORM enctype="multipart/form-data" method="post" action="insertar.php">
Archivo: <INPUT type="file" name="archivo" size="30">
<input type="hidden" name="id_user" value="<?php $_SESSION['user_id']; ?>">
<INPUT type="submit" name="submit" value="Subir archivo">
</FORM>
</BODY>
</HTML>
Este es mi insertar.php:
<?php session_start(); ?>
<?php
//Primero, analiza 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: formulario.php?proceso=Falta indicar fichero."); //o como se llame el formulario ..
exit;
}
//Establecemos una conexión con la base de datos.
$Host = "localhost";
$User = "";
$Password = "";
$DataBase = "db";
$conexion = mysql_connect($Host,$User,$Password)
or die("No se pudo realizar la conexion con el servidor.");
mysql_select_db($DataBase,$conexion)
or die("No se puede seleccionar BD");
$binario_nombre_temporal=$_FILES['archivo']['tmp_name'] ;
$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'];
$id_user=$_POST['id_user'];
//insertamos los datos en la BD.
$consulta_insertar = "INSERT INTO images (id, id_user, image, name, weight, type) VALUES ('', '$id_user', '$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: imagenes.php");
exit;
?>