Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/06/2010, 07:48
bonbo
 
Fecha de Ingreso: julio-2009
Ubicación: Santo domingo
Mensajes: 36
Antigüedad: 14 años, 9 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>";
}


?>