Problema para update imagen y url...

Hola, mi inquietud es la siguiente:
Soy comerciante, pero me gusta el manejo de bases de datos.
He aprendido a guardar imágenes en una carpeta del servidor y su (url_foto), (url_thumb) en dos campos de la db llamados igualmente (url_foto), (url_thumb)
En la carpeta raíz del sitio (www), tengo la carpeta (Fotos_usuarios y subcarpeta, thumb)
Codigo (Formulario subir_datos):
<form action="subir_datos.php" method="post" enctype="multipart/form-data" name="action" id="action">
Anuncio numero:<input name="num_anun" type="text"  size="1" maxlength="2"/>
Nombre:<input name="nombre" type="text" />
E_mail:<input name="e_mail" type="text" />
Foto:<input name="archivo" type="file" size="30" />
     <input name="action" type="hidden" value="upload" />
</form>
Codigo (subir_datos):
<?php
      $status = "";
      ($_POST["action"] = "subir_datos") or die ("
<h1 align=center>Falta que envíe la foto</h1>
");
          // obtenemos los datos del archivo
          $tamano = $_FILES["archivo"]['size'];
          $tipo = $_FILES["archivo"]['type'];
          $archivo = $_FILES["archivo"]['name'];
          $prefijo = substr(md5(uniqid(rand())),0,6);
          ($archivo != "") or die ("
<h1 align=center>Falta que envíe la foto</h1>
".$archivo);
           // guardamos el archivo a la carpeta "../Fotos_usuarios/"
          ($tipo = "image/jpeg" || $tipo = "image/jpg") or die ("
<h1 align=center>Sólo se admiten imágenes en <b>.jpg</b> y <b>.jpeg</b></h1>
");
              $destino =  "../Fotos_usuarios/".$prefijo."_".$archivo;
           (copy($_FILES['archivo']['tmp_name'],$destino)) or die ("
<h1 align=center>Error al subir la foto</h1>
".$archivo);
//aquí empieza el código de creación del thumbnail
          $source=$destino; // archivo de origen
          $dest="../Fotos_usuarios/thumb/tb_".$prefijo."_".$archivo; // archivo de destino
          $width_d=133; // ancho de salida
          $height_d=100; // alto de salida
            list($width_s, $height_s, $type, $attr) = getimagesize($source, $info2); // obtengo información del archivo
          $gd_s = imagecreatefromjpeg($source); // crea el recurso gd para el origen
          $gd_d = imagecreatetruecolor($width_d, $height_d); // crea el recurso gd para la salida
            imagecopyresampled($gd_d, $gd_s, 0, 0, 0, 0, $width_d, $height_d, $width_s, $height_s); // redimensiona
            imagejpeg($gd_d, $dest); // graba
        // Se liberan recursos
        imagedestroy($gd_s);
        imagedestroy($gd_d);
  //establece una conexión con la base de datos.
$conexion = mysql_connect("localhost","root","") or die("No se pudo realizar la conexion con el servidor.");
mysql_select_db("mydb",$conexion) or die("No se puede seleccionar BD");
$num_anun=$_POST['num_anun'];
$nombre=$_POST['nombre'];
$e_mail=$_POST['e_mail'];
$url_foto="../Fotos_usuarios/".$prefijo."_".$archivo;
$url_thumb="../Fotos_usuarios/thumb/tb_".$prefijo."_".$archivo;
//insertamos los datos en la BD.
$consulta_insertar = "INSERT INTO fotos (num_anun, nombre, e_mail, url_foto, url_thumb) VALUES ('$num_anun, '$nombre, '$e_mail, '$url_foto', '$url_thumb')";
mysql_query($consulta_insertar,$conexion) or die("No se pudo insertar los datos en la base de datos.");
?>
--- Todo esta perfecto pero ahora quisiera poder actualizar tanto las url´s como la foto de algún usuario que se haya equivocado al enviar su archivo...
 Codigo (UPDATE):
<?php
$conexion = mysql_connect("localhost","root","") or die("No se pudo realizar la conexion con el servidor.");
mysql_select_db("mydb",$conexion) or die("No se puede seleccionar BD");
//si es que dió click en el botón "OK"
if (isset($_POST['OK']))
{  // ejecutando el query select regresa un rowset
$datos = mysql_query("select  e_mail, url_foto, url_thumb from datos where num_anun= '".$_POST['num_anun']."' AND e_mail= '".$_POST['e_mail']."'", $conexion) or die ("problema con query".mysql_error()) ;
// regresando renglon con registro
$reg = mysql_fetch_array($datos);
}
if (isset($_POST['OK2']))
{
      $status = "";
      ($_POST['action']) or die ("
<h1 align=center>Falta que envíe la foto</h1>
");
          // obtenemos los datos del archivo
          $tamano = $_FILES["archivo"]['size'];
          $tipo = $_FILES["archivo"]['type'];
          $archivo = $_FILES["archivo"]['name'];
          $prefijo = substr(md5(uniqid(rand())),0,6);
          ($archivo != "") or die ("
<h1 align=center>Falta que envíe la foto</h1>
".$archivo);
           // guardamos el archivo a la carpeta "../Fotos_usuarios/"
          ($tipo = "image/jpeg" || $tipo = "image/jpg") or die ("
<h1 align=center>Sólo se admiten imágenes en <b>.jpg</b> y <b>.jpeg</b></h1>
");
              $destino = ...

1 Respuesta

Respuesta
1
Casi seguro, que el problema está aquí:
url_foto='".$_POST['url_foto']."', url_thumb='".$_POST['url_thumb']."
No existe $_POST['url_foto'] ni thumb, reemplazalo por
url_foto='".$url_foto."', url_thumb='".$url_thumb."
Y debería funcionar

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas