Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Upload de imagen y guardar el url en mysql

Estas en el tema de Upload de imagen y guardar el url en mysql en el foro de Bases de Datos General en Foros del Web. Saludos, tengo un problema, genere el codigo de php que ace la funcion de subir los archivos a la carpeta, luego quiero que en la ...
  #1 (permalink)  
Antiguo 20/06/2010, 07:48
 
Fecha de Ingreso: julio-2009
Ubicación: Santo domingo
Mensajes: 36
Antigüedad: 15 años, 4 meses
Puntos: 0
Exclamación Upload de imagen y guardar el url en mysql

Saludos, tengo un problema, genere el codigo de php que ace la funcion de subir los archivos a la carpeta, luego quiero que en la db se guarde el url de esa imagen y automaticamente al subir la imagen se muestre un previer de la imagen, si me pudieran explicar que tengo que hacer, les dejo el codigo para que me ayuden.

Gracias

Cita:
<?php

//coloca la coneccion correcta a mysql aqui
$conexion = mysql_connect("localhost", "root", "pass");
//selecciona la base de datos en la que quieres trabajar
//y si esa es la unica base de datos que tienes, no vuelvas a abrir coneccion con mysql
//ni a seleccionar otra vez la db
mysql_select_db("pulga", $conexion);


$queEmp = "SELECT * FROM image ORDER BY id DESC";
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
$totEmp = mysql_num_rows($resEmp);
if ($totEmp> 0) {
while ($rowEmp = mysql_fetch_assoc($resEmp)) {

//while vacio...

}
}


//si esta coneccion es la misma que la de arriba, no hace falta incluirla
//y menos incluirla 3 o 4 veces
//include('config.php'); //incluimos el config.php que contiene los datos de la conexión a la db
//include('config');



$state = false;

if ($_POST['action'] == "add" && $_FILES['archivo']['name'] != "") {



//VERIFICA A QUI:


//aqui conectas, denuevo pero al parecer a otra base de datos
$conexion = mysql_connect("localhost", "root", "pass");
//pero a una tabla del mismo nombre
mysql_select_db("pulga", $conexion);

//A $postear PUEDES DARLE UN VALOR MANUALMENTE PARA PROBAR Y QUE NO FALLE LA CONSULTA
$postear = $_SESSION[usuario];

//session_start() debe estar precedido de la @ a esta altura del script
@session_start();

$que = "INSERT INTO image (titulo, descripcion, imagen, descarga, fecha, enviado) ";
$que.= "VALUES ('".$_POST['titulo']."', '".$_POST['descripcion']."', '".$_POST['$ruta']."', '".$_POST['descarga']."', '".$_POST['fecha']."', '".$_SESSION[usuario]."')";
$res = mysql_query($que, $conexion) or die(mysql_error());
$state = true;




//lo puedes usar tambien para guardar dentro de db:

$ruta = "./imagenes/" . $_FILES['archivo']['name'];

//Para poder usarlo para los dos ponlo antes de la consulta mysql (INSERT INTO).

//Y luego reemplazas $_POST['$ruta'] por $ruta

//No me habia percatado de ese detalle..... sory.

//nota: ...pon esa ruta dentro del este condicional

if ($_POST['action'] == "add" && $_FILES['archivo']['name'] != "") {
//puedes ponerla aca nomas, seguidamente,
//y $ruta ya estara disponible para db y upload
$ruta = "./imagenes/" . $_FILES['archivo']['name'];
echo "La imagen subio correctamente";
}

}


//SI INCLUDE() ES LA MISMA CONECCION A MYSQL QUE YA HICISTE NO ES NECESARIO
//include('config.php'); //incluimos el config.php que contiene los datos de la conexión a la db y la sesión

/*
if($_SESSION[level] == 1 or $_SESSION[level] == 3){
echo '';
}else{
Header("Location: index.php");
}
*/

?>
<form name="formulario" form id="insertar" enctype="multipart/form-data" method="POST" action="">
<input name="titulo" type="text" id="nombre" size="50" /><br />
<textarea name="descripcion" id="textarea" cols="45" rows="5"></textarea><br />
<input type="file" name="archivo" id="archivo"><br />
<input type="text" name="descarga" id="textfield" /><br />
<input type="text" name="fecha" id="fecha" /><br />
<input type="submit" name="Submit" value="Enviar disco" /><br />
<input type="hidden" name="action" value="add" /><br />
</form>
<?php


if ($state) {
echo "<p /><em>Disco agregado</em></p>";
}


?>

Etiquetas: mysql, php, upload
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:56.