Ver Mensaje Individual
  #9 (permalink)  
Antiguo 28/11/2007, 19:10
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: subir un archivo y guardar ruta en base de datos

Eso pasa porque estás haciendo dos INSERTs a la bd, por lo tanto por cada archivo que subes se generan dos filas. Podrias arreglarlo con un UPDATE o haciendo todo con la misma consulta INSERT. Puedes borrar esta linea:

Código PHP:
mysql_query("INSERT INTO Mensajes (link) VALUES ('$upload_dir$file_name')"); 
y donde haces tu consulta INSERT primera, puedes incluir los datos del archivo
Código PHP:
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "upload")) { 
  
$insertSQL = sprintf("INSERT INTO Mensajes (titulo, lugar, f, m, t, link) VALUES (%s, %s, %s, %s, %s, %s)", 
                       
GetSQLValueString($_POST['titulo'], "text"), 
                       
GetSQLValueString($_POST['lugar'], "text"), 
                       
GetSQLValueString($_POST['f'], "text"), 
                       
GetSQLValueString($_POST['m'], "text"), 
                       
GetSQLValueString($_POST['t'], "text"), 
                       
GetSQLValueString($upload_dir.$file_name, "text")); 

  
mysql_select_db($database_ldp, $ldp); 
  
$Result1 = mysql_query($insertSQL, $ldp) or die(mysql_error()); 
} 
Obviamente, entonces, tendrás que definir las variables %upload_dir y $file_name antes de hacer esa consulta... Lo mejor es que el upload de archivos entero lo hagas antes de insertar los datos a la BD.

Si tienes algún problema, continúa posteando...

Un saludo,