• Viernes 3 de Mayo de 2024, 09:42

Autor Tema:  Problema Al Relacionar Tablas  (Leído 1039 veces)

zaida20

  • Miembro MUY activo
  • ***
  • Mensajes: 213
    • Ver Perfil
Problema Al Relacionar Tablas
« en: Lunes 17 de Septiembre de 2007, 10:20 »
0
Hola de nuevo a todos:

Tengo na pequeña duda con un código con el que creo que me estoy equivocando, tengo un formulario en el cual el usuario introduce una serie de datos y en el que introduce también las imágenes que quiera, al enviar el formulario quiero que se agreguen en una tabla de mysql todos los datos y en otra las imágenes, quiero que las tablas queden relacionadas por la id de la primera tabla.

Las tablas son:

Blog e img_blog, y el código que tengo es:

Código: Text
  1.  
  2. <?php
  3. //se insertan los datos del blog en la base de datos
  4. $titulo=$_POST['titulo'];
  5. $texto_blog=$_POST['texto_blog'];
  6. $plantilla=$_POST['radiobutton1'];
  7. $insert="INSERT INTO blog(id_usuario,texto,titulo,plantilla)values(1,'$texto_blog','$titulo','$plantilla')";
  8. if(mysql_query($insert,$conexion))
  9. {
  10.   $sql="select max(id) from blog";
  11.   $obtener_id=(mysql_query($sql,$conexion));
  12.   if($obtener_id!=NULL)
  13.   {
  14.     if(mysql_num_rows($obtener_id)!=0)
  15.     {
  16.       $i=0;
  17.       while($row=mysql_fetch_array($obtener_id))
  18.       {
  19.         $id[$i]=$row['id'];
  20.         echo $row['id'];
  21.         echo "dfdsfsfsfsf";
  22.         $i++;
  23.       }
  24.     }
  25.   }
  26. }
  27. else
  28. {
  29.   echo "Error al ingresar el blog";
  30.      echo "<br>";
  31. }
  32.  
  33. ///recoge las imágenes que se han seleccionado en el formulario
  34. if($_FILES['foto']['name']!=NULL)
  35. {
  36.   $uploadfile_temporal=$_FILES['foto']['tmp_name'];
  37.   $uploadfile_nombre="imagenes/".$_FILES['foto']['name'];
  38.   $ruta_foto='imagenes/'.$_FILES['foto']['name'];//recoge la ruta de la imagen(carpeta y nombre)
  39.   if (is_uploaded_file($uploadfile_temporal))
  40.   {
  41.    
  42.     move_uploaded_file($uploadfile_temporal,$uploadfile_nombre);
  43.     $sql="INSERT INTO img_blog(ruta,id_blog)values('$ruta_foto',$id)";//inserta la ruta de las imágenes en la tabla de la base de datos
  44.     if(mysql_query($sql,$conexion))
  45.     {
  46.       echo "bien";
  47.     }
  48.     else
  49.     {
  50.       echo "mal";
  51.     }
  52.  
  53.   }
  54.   else
  55.   {
  56.     echo "error al procesar foto".die();
  57.   }
  58. }
  59. else
  60. {
  61.   $ruta_foto='-';
  62. }
  63. ?>
  64.  
  65.  

En la consulta quiero sacar el id mas alto de la tabla blog para relacionarla con la de img_blog. Funciona todo el código a la perfección menos eso, ¿alguien puede ayudarme por favor?

Saludos y gracias  :hola:
---- Las oportunidades que se te presentan son las que son y ellas te llevarán a la felicidad ----

zaida20

  • Miembro MUY activo
  • ***
  • Mensajes: 213
    • Ver Perfil
Re: Problema Al Relacionar Tablas
« Respuesta #1 en: Lunes 17 de Septiembre de 2007, 10:46 »
0
Solucionado  :P

He cambiado ésto :

Código: Text
  1. $sql="select max(id) from blog";
  2.   $obtener_id=(mysql_query($sql,$conexion));
  3.   if($obtener_id!=NULL)
  4.   {
  5.     if(mysql_num_rows($obtener_id)!=0)
  6.     {
  7.       $i=0;
  8.       while($row=mysql_fetch_array($obtener_id))
  9.       {
  10.         $id[$i]=$row['id'];
  11.         echo $row['id'];
  12.         echo "dfdsfsfsfsf";
  13.         $i++;
  14.       }
  15.     }
  16.   }
  17.  

por ésto:

Código: Text
  1. $id=mysql_insert_id();
  2.  

Y funciona perfecto!!
Saludos!! :hola:
---- Las oportunidades que se te presentan son las que son y ellas te llevarán a la felicidad ----