No consigo realizarlo, me da error:
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhost/anuncialoquequieras.es/home/html/imagenes/contactos.php:12) in /var/www/vhost/anuncialoquequieras.es/home/html/imagenes/upload2.php on line 79.
La ruta es almacenada en la BD Mysql como "498f2a_P1020074.jpg" y tendria que ser "imagenes/498f2a_P1020074.jpg" ya que la ruta del servidor es "carpeta imagenes/"
La imagen se almacena correctamente en el servidor, pero la dirección que da la BD es incorrecta, y no puede leer el archivo.
¿Alguna sugerencia?
¿Dónde podría obtener un código parecido??
Os adjunto código página.
Muchas Gracias.
Código PHP:
Ver original
<?php require_once('contactos.php'); ?> <?php $directorio = ''.$prefijo.'_'; function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { if (PHP_VERSION < 6) { } $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": break; case "double": break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } $editFormAction = $_SERVER['PHP_SELF']; } $insertSQL = sprintf("INSERT INTO contactos (idempleado, titulo, contenido, foto1) VALUES (%s, %s, %s, %s)", GetSQLValueString($_POST['idempleado'], "int"), GetSQLValueString($_POST['titulo'], "text"), GetSQLValueString($_POST['contenido'], "text"), GetSQLValueString($directorio . $_FILES['foto1']['name'], "text")); //Nombre de la carpeta donde se guardará el archivo. $carpeta = "../imagenes"; //Nombre del archivo $archivo = $_FILES['seleccion']['name']; //Nombre tempoaral del archivo $temporal = $_FILES['seleccion']['tmp_name']; //Tamaño del archivo $tamano = $_FILES['seleccion']['size']; //Tipo de archivo $tipo = $_FILES['seleccion']['type']; //URL de la imagen. //Subimos el archivo //Si todo salio bien //Si fallo } else { //Advertir el fallo $estado = "Hubo un error al subir el archivo.<br>Posiblemente es mayor a lo 200KB permitido.<br>Inténtelo de nuevo!"; } $insertGoTo = "imagenes.php"; $insertGoTo .= $_SERVER['QUERY_STRING']; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Documento sin título</title> </head> <body> <form action="<?php echo $editFormAction; ?>" method="post" name="form1" id="form1" enctype="multipart/form-data"> <table align="center"> <tr valign="baseline"> <td nowrap="nowrap" align="right">Titulo:</td> <td><input type="text" name="titulo" value="" size="32" /></td> </tr> <tr valign="baseline"> <td nowrap="nowrap" align="right" valign="top">Contenido:</td> <td><textarea name="contenido" cols="50" rows="5"></textarea></td> </tr> <tr valign="baseline"> <td nowrap="nowrap" align="right"> </td> <td> </td> </tr> <tr valign="baseline"> <td nowrap="nowrap" align="right"> </td> <td> <label> <input type="hidden" name="MAX_FILE_SIZE" id="subir" value="200000" /> Elija un archivo para cargar :<br /><input type="file" name="foto1" id="foto1"><br /> </label> </td> </tr> <tr valign="baseline"> <td nowrap="nowrap" align="right"> </td> <td> </td> </tr> <tr valign="baseline"> <td nowrap="nowrap" align="right">Nombre del archivo:</td> <td><input type="text" name="foto1" value="" size="32" /></td> </tr> <tr valign="baseline"> <td nowrap="nowrap" align="right"> </td> <td><input type="submit" value="Insertar registro" /></td> </tr> </table> <input type="hidden" name="id_noticia" value="" /> <input type="hidden" name="MM_insert" value="form1" /> </form> <p> </p> </body> </html>