He hecho lo que os dejo aquí y parece que funciona. Igual se puede hacer mejor... En todo caso lo dejo para quien pueda necesitar algo parecido.
Se trata de subir una imagen (la ruta a la base de datos y el archivo archivo jpg a una carpeta), así como los valores de los campos categoría, título, descripción y fecha a esa base de datos
Comentar que el campo categoria incluye varias opciones a escojer, cuyos valores serán los que se pondrán en la tabla correspondiente en la base de datos
User de la Base de datos: userdatabase
pass: password
nombre base de datos: namedatabase
tabla de la base de datos: tabla
campos de la tabla: (id,imagen,descripcion,titulo,fecha,categoria)
las imagenes se guardan en la carpeta llamada imagenes
1º se monta el formulario en el archivo formulario.html que va a buscar el archivo procesar.php:
Código HTML:
Ver original<form action="procesar.php" enctype="multipart/form-data" method="post"> <input id="imagen" name="imagen" size="30" type="file" />
Categoria:
<select id="categoria" name="categoria" style="width: 126px; height: 33px"> Titol:
<input id="titulo" name="titulo" type="text" style="width: 205px" /><br /> Descripcio:
<textarea id="descripcion" name="descripcion" style="width: 264px; height: 150px"></textarea><br /> Data:
<input id="fecha" name="fecha" style="width: 173px" type="text" /><br />
<input name="submit" type="submit" value="Guardar" />
2º se crea el archivo procesar.php:
Código PHP:
Ver original<?php
// Datos de conexión a configurar
$user = "userdatabase";
$pass = "pass";
$bbdd = "namedatabase";
// Ruta donde se guardarán las imágenes
$directorio = $_SERVER['DOCUMENT_ROOT'].'/imagenes/';
// Conecto a la BBDD
// Recibo los datos de la imagen y del formulario anteriormente montado
$nombre = $_FILES['imagen']['name'];
$tipo = $_FILES['imagen']['type'];
$tamano = $_FILES['imagen']['size'];
$titulo = $_POST['titulo'];
$descripcion = $_POST['descripcion'];
$fecha = $_POST['fecha'];
$categoria = $_POST['categoria'];
// Muevo la imagen desde su ubicación
// temporal al directorio definitivo
// Guardamos en la BBDD todos los datos
$sql = "INSERT into tabla (imagen,descripcion,titulo,fecha,categoria) values ('/imagenes/$nombre','$descripcion','$titulo','$fecha','$categoria')";
?>
Espero que les funcione!