elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  La imagen se sube a la carpeta pero no sube nada a la base de datos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] 3 Ir Abajo Respuesta Imprimir
Autor Tema: La imagen se sube a la carpeta pero no sube nada a la base de datos  (Leído 9,804 veces)
EdwardX

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: La imagen se sube a la carpeta pero no sube nada a la base de datos
« Respuesta #10 en: 2 Septiembre 2016, 22:34 pm »

¿Demasiado complicado? Ya intentaré preguntar en otros foros a ver si alguien sabe. ¿Me recomendáis algún foro de php?

Saludos y gracias de todos modos. ; )


En línea

Aprendiz eterno
bengy


Desconectado Desconectado

Mensajes: 501


mis virtudes y defectos son inseparables


Ver Perfil WWW
Re: La imagen se sube a la carpeta pero no sube nada a la base de datos
« Respuesta #11 en: 3 Septiembre 2016, 03:26 am »

no pude leer todo el post, pero donde esta la variable del directorio?



En línea

EdwardX

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: La imagen se sube a la carpeta pero no sube nada a la base de datos
« Respuesta #12 en: 3 Septiembre 2016, 12:45 pm »

¡Gracias una vez más por la respuesta!
¿Te refieres a esto?
$carpeta = "imagenesdiscos/";

La imagen se guarda en la carpeta, pero no se como publicarla utilizando ruta guardada en base de datos.

El objetivo del proyecto es el siguiete:

1)Un formulario que permita a los usuarios publicar en una web discos de jazz locales introduciendo los siguientes valores:
-Título del disco
-Año de publicación
-Sello discográfico
-Títulos de los temas (de las canciones)
-Nombres de los músicos que han formado parte del disco
-Comentario sobre el disco
-Imagen de la portada del disco de tamaño: 500px X 500px
(Este último es el que me da problemas)

2)En una sección llamada Discos se verás todos los discos publicados por la gente.


Éxitos y Fracasos:

Éxitos: Todos los datos de texto se introducen en la base de datos perfectamente y se publican. La imagen de la carátula se sube al directorio.
Fracasos: No consigo que se publiquen las carátulas de los discos subidos en el formulario. Se suben a la carpeta local, y nada más... ¡Socorro! ; )


¿A alguien se le ocurre cómo hacerlo?

¡Muchas gracias a todos!
En línea

Aprendiz eterno
#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.850



Ver Perfil WWW
Re: La imagen se sube a la carpeta pero no sube nada a la base de datos
« Respuesta #13 en: 3 Septiembre 2016, 20:51 pm »

Por favor, no hagas doble post. Este es el sitio adecuado para tu pregunta puesto que estas utilizando PHP.

Tu problema es de lo mas simple. Como te dije en el principio, ignorabas la octava variable que le pasabas a la query y por eso no se subía nada, para solucionarlo, en vez de darle a la query esa variable decidiste quitarla del set. Obviamente si la quitas nunca la subirás.

Tu problema es la lógica que le aplicas. Ya no es por decir nada pero esto es un caso muy simple al que no le estas prestando atención.

Código
  1. $carpeta = 'imagenesdiscos/';
  2. $destino = $carpeta.$_FILES['imagendisco']['name'];
  3.  
  4. if(copy($_FILES['imagendisco']['tmp_name'],$destino)){
  5.    $nombreImagen=$_FILES['imagendisco']['name'];  
  6. }
  7.  
  8. $consulta = mysql_query("INSERT INTO discos(titulo,artista,ano,sello,temas, artistas,comentario,fotodisco) VALUES ('$titulodisco','$grupoartista','$anopublicacion','$sello','$titulostemas','$musicosdisco','$comentariodisco', '$nombreImagen')");
  9.  
  10. if($consulta){
  11.    echo "Error al insertar los datos en la tabla. ". mysql_error();
  12. } else {
  13.    echo "Correcto."
  14. }


Abrir un iterador de directorio es inutil en este caso y menos como lo estas haciendo.
http://www.php.net/opendir

Alteras el uso de comillas dobles y simples sin sentido alguno y el tabbing parece inconsistente. A mi lo que me parece es que has intentado copiar código de por ahí y no te sale lo que querías... pero que tampoco te has esforzado mucho en deducir porque..

Saludos
En línea

EdwardX

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: La imagen se sube a la carpeta pero no sube nada a la base de datos
« Respuesta #14 en: 3 Septiembre 2016, 21:07 pm »

¡Muchas gracias #!drvy!
Efectivamente soy un novato. Revisaré e intentaré comprender el código. A ver si lo consigo... Parte del código como bien deducez lo he ido añadiendo mirando y copiando por aquí y por allá, ya que soy aprendiz. Algunas cosas comprendiendo y otras que todavía no. Aunque hasta hace poco me he dedicado más al diseño que al backend, me interesa mucho y trato de aprender php y bases de datos poco a poco. Espero no dar mucho la lata. xD

Saludos y gracias. ; )
En línea

Aprendiz eterno
EdwardX

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: La imagen se sube a la carpeta pero no sube nada a la base de datos
« Respuesta #15 en: 4 Septiembre 2016, 10:52 am »

Me da el siguiente error: "Error al insertar los datos en la tabla."  :xD

¿Es correcto esto? Esto de que tenga 2 destinos no lo entiendo bien. ¿Es uno para la imagen física y lo otro para el temporal?
Código
  1. $fotodisco = $_FILES["imagendisco"]['tmp_name'];





Código
  1. //CONEXION//
  2. <?php
  3. $conexion = mysql_connect("localhost", "jazzgune","XXXXXX");
  4. if(!isset($conexion)){
  5. echo "Error al conectar a la base de datos." . mysql_error();
  6. exit();
  7. }
  8. //SELECCION DE BASE DE DATOS//
  9. $seleccionar_bd = mysql_select_db("jazzgune");
  10. if(!isset($seleccionar_bd)){
  11. echo "Error al seleccionar la base de datos." . mysql_error();
  12. exit();
  13. }
  14.  
  15. //DE FORMULARIO A VARIABLE//
  16. $titulodisco = $_POST["titulodisco"];
  17. $grupoartista = $_POST["grupoartista"];
  18. $anopublicacion = $_POST["anopublicacion"];
  19. $sello = $_POST["sello"];
  20. $titulostemas = $_POST["titulostemas"];
  21. $musicosdisco = $_POST["musicosdisco"];
  22. $comentariodisco = $_POST["comentariodisco"];
  23. $fotodisco = $_FILES["imagendisco"]['tmp_name'];
  24.  
  25.  
  26.  
  27.  
  28. //INSERTAR DE VARIABLE A TABLA DE BASE DE DATOS//
  29.    $carpeta = 'imagenesdiscos/';
  30.    $destino = $carpeta.$_FILES['imagendisco']['name'];
  31.  
  32.    if(copy($_FILES['imagendisco']['tmp_name'],$destino)){
  33.        $nombreImagen=$_FILES['imagendisco']['tmp_name'];  
  34.    }
  35.  
  36. //DE 8 ELEMENTOS A 8 ELEMENTOS...//
  37.    $consulta = mysql_query("INSERT INTO discos(titulo,artista,ano,sello,temas, artistas,comentario,fotodisco) VALUES ('$titulodisco','$grupoartista','$anopublicacion','$sello','$titulostemas','$musicosdisco','$comentariodisco','$nombreImagen')");
  38.  
  39.    if($consulta){
  40.        echo "Error al insertar los datos en la tabla. ". mysql_error();
  41.    } else {
  42.        echo "Correcto.";
  43.    }
  44.  
  45. ?>


¡Un saludo y gracias!  ;-)
« Última modificación: 4 Septiembre 2016, 11:25 am por r84 » En línea

Aprendiz eterno
EdwardX

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: La imagen se sube a la carpeta pero no sube nada a la base de datos
« Respuesta #16 en: 4 Septiembre 2016, 13:44 pm »

¡Ya sube el nombre del archivo a la base de datos y la imagen a la carpeta indicada! Parece que la cosa avanza... xD
Pero sale el error aunque funcione...
"Error al insertar los datos en la tabla. "

¡Saludos!
En línea

Aprendiz eterno
EdwardX

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: La imagen se sube a la carpeta pero no sube nada a la base de datos
« Respuesta #17 en: 4 Septiembre 2016, 15:56 pm »

Tengo dudas de cómo se debería poner la sintaxis en el caso de tener:
php +html + php + html + php
(Como lo indicado en negrita)


<?php
   include("conexion.php");
   $consulta = mysql_query("SELECT * FROM discos");
   
   while ($registro = mysql_fetch_array ($consulta)) {
      echo "<img src='imagenesdiscos/'.$registro['fotodisco']./>";

?>
En línea

Aprendiz eterno
bengy


Desconectado Desconectado

Mensajes: 501


mis virtudes y defectos son inseparables


Ver Perfil WWW
Re: La imagen se sube a la carpeta pero no sube nada a la base de datos
« Respuesta #18 en: 4 Septiembre 2016, 15:59 pm »

deberia ser asi

Código:
if(!$consulta){
        echo "Error al insertar los datos en la tabla. ". mysql_error();
    } else {
        echo "Correcto.";
    }
 
En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.850



Ver Perfil WWW
Re: La imagen se sube a la carpeta pero no sube nada a la base de datos
« Respuesta #19 en: 4 Septiembre 2016, 21:56 pm »

Efectivamente, se me escapo un ! delante de $consulta. Pero tampoco te molestaste en mirar el código :/

Saludos
En línea

Páginas: 1 [2] 3 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines