Foros del Web » Programando para Internet » PHP »

Problemas con $_GET

Estas en el tema de Problemas con $_GET en el foro de PHP en Foros del Web. Hola que tal, lo que pasa es que estoy utilizando el $_GET, para que, dependiendo de los valores del $_GET muestre distinto contenido y lo ...
  #1 (permalink)  
Antiguo 06/08/2012, 13:54
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 14 años, 8 meses
Puntos: 5
Problemas con $_GET

Hola que tal, lo que pasa es que estoy utilizando el $_GET, para que, dependiendo de los valores del $_GET muestre distinto contenido y lo estoy haciendo de la siguiente manera

Código PHP:
Ver original
  1. <?php
  2.  
  3. $sql_select_folders_public = "SELECT f_NAME FROM FOLDERS WHERE IUID = '".$_SESSION['iuid']."'";
  4. $result_sql_select_folders_public = mysql_query($sql_select_folders_public);
  5. $images_folder_public = mysql_fetch_assoc($result_sql_select_folders_public);
  6.  
  7. if($_GET['index'] == "images" && $_GET['folder'] == "public" && $_GET['set'] == $images_folder_public['F_NAME']) {
  8.    
  9.     //MOSTRAR IMAGENES DENTRO DE CARPETAS PUBLICAS
  10.     $winderjester = "SELECT * FROM IMAGES I INNER JOIN THUMBNAILS T ON I.ID = T.ID INNER JOIN FOLDERS F ON I.ID_FOLDER = F.ID_FOLDER WHERE F.F_NAME = '".$images_folder_public['F_NAME']."' AND F.PARENT = 'PUBLIC' AND I.IUID = '".$_SESSION['iuid']."'";
  11.     $result_winderjester = mysql_query($winderjester);
  12.    
  13.     while($hjtm = mysql_fetch_assoc($result_winderjester)) {
  14.         echo '<div class="more-upload">'."\n";
  15.         echo '<div class="options-thumbnails">'."\n";
  16.         echo '<a href="http://web.com/preview.php?id='.$hjtm['ID'].'" target="_blank"><div class="options-preview"></div></a>'."\n";
  17.         echo '<a href="#"><div class="options-share"></div></a>'."\n";
  18.         echo '<a href="http://web.com/web/functions/private.php?id='.$hjtm['ID'].'"><div class="options-private"></div></a>'."\n";
  19.         echo '<a href="http://web.com/web/functions/delete.php?id='.$hjtm['ID'].'&pin='.$hjtm['PIN'].'"><div class="options-delete"></div></a>'."\n";
  20.         echo '</div>'."\n";
  21.         echo '<div class="thumbnail"><img src="'.$hjtm['SQUARE_75'].'" height="75" width="75"></div>'."\n";
  22.         echo '</div>'."\n\n";
  23.     }
  24. }
  25.  
  26. elseif($_GET['index'] == "images" && $_GET['folder'] == "private" && $_GET['set'] == $images_folder_public['F_NAME']) {
  27.    
  28.     //MOSTRAR IMAGENES DENTRO DE CARPETAS PRIVADAS
  29.     $winderjester2 = "SELECT * FROM IMAGES I INNER JOIN THUMBNAILS T ON I.ID = T.ID INNER JOIN FOLDERS F ON I.ID_FOLDER = F.ID_FOLDER WHERE F.F_NAME = '".$images_folder_public['F_NAME']."' AND F.PARENT = 'PRIVATE' AND I.IUID = '".$_SESSION['iuid']."'";
  30.     $result_winderjester2 = mysql_query($winderjester2);
  31.    
  32.     while($hjtm2 = mysql_fetch_assoc($result_winderjester2)) {
  33.         echo '<div class="more-upload">'."\n";
  34.         echo '<div class="options-thumbnails">'."\n";
  35.         echo '<a href="http://web.com/preview.php?id='.$hjtm2['ID'].'" target="_blank"><div class="options-preview"></div></a>'."\n";
  36.         echo '<a href="#"><div class="options-share"></div></a>'."\n";
  37.         echo '<a href="http://web.com/web/functions/private.php?id='.$hjtm2['ID'].'"><div class="options-private"></div></a>'."\n";
  38.         echo '<a href="http://web.com/web/functions/delete.php?id='.$hjtm2['ID'].'&pin='.$hjtm2['PIN'].'"><div class="options-delete"></div></a>'."\n";
  39.         echo '</div>'."\n";
  40.         echo '<div class="thumbnail"><img src="'.$hjtm2['SQUARE_75'].'" height="75" width="75"></div>'."\n";
  41.         echo '</div>'."\n\n";
  42.     }
  43. }
  44.  
  45. elseif($_GET['index'] == "images" && $_GET['folder'] == "private") {
  46.    
  47.     //MOSTRAR CARPETAS PRIVADAS
  48.     $sql_folders_private = "SELECT * FROM FOLDERS WHERE IUID = '".$_SESSION['iuid']."' AND PARENT = 'PRIVATE'";
  49.     $result_sql_folders_private = mysql_query($sql_folders_private);
  50.    
  51.     while($folder_private = mysql_fetch_assoc($result_sql_folders_private)) {
  52.         if(strlen($folder_private['F_NAME']) > 10) {
  53.             $name_folder_private = substr($folder_private['F_NAME'], 0, 7)."...";
  54.         } else {
  55.             $name_folder_private = $folder_private['F_NAME'];
  56.         }
  57.        
  58.         echo '<div class="more-upload" style="padding-top: 0; padding-bottom: 0; height: 103px;padding: 0;width: 103px;text-align: center;">'."\n";
  59.         echo '<a href="?index=images&folder='.$folder_private['F_NAME'].'" title="'.$folder_private['F_NAME'].'">'."\n";
  60.         echo '<img src="images/folder.png" height="75" width="75">'."\n";
  61.         echo '<div style="text-align: center; line-height: 0;font-size: 12px;">'.$name_folder_private.'</div>'."\n";
  62.         echo '</a>'."\n";
  63.         echo '</div>'."\n\n";
  64.     }
  65.    
  66.     //MOSTRAR IMAGENES PRIVADAS
  67.     $sql_private = "SELECT * FROM IMAGES I INNER JOIN THUMBNAILS T ON I.ID = T.ID WHERE IUID = '".$_SESSION['iuid']."' AND I.ID IN(SELECT * FROM PRIVATE) ORDER BY DATE DESC";
  68.     $result_private = mysql_query($sql_private);
  69.    
  70.     while($private = mysql_fetch_assoc($result_private)) {
  71.         echo "<div class=\"more-upload\"><a href=\"http://web.com/preview.php?id=".$private['ID']."\"><img src=\"".$private['SQUARE_75']."\" height=\"75\" width=\"75\"></a></div>\n";
  72.     }
  73. }
  74.  
  75. elseif($_GET['index'] == "images") {
  76.     $sql_more = "SELECT * FROM IMAGES I INNER JOIN THUMBNAILS T ON I.ID = T.ID WHERE IUID = '".$_SESSION['iuid']."' AND ID_FOLDER = '' AND I.ID NOT IN(SELECT * FROM PRIVATE) ORDER BY ".$row_pref['SORT_BY']." + 0 ".$row_pref['ORDER_BY']."";
  77.     $result_more = mysql_query($sql_more);
  78.    
  79.     //MOSTRAR ENLACE CARPETA PRIVADA
  80.     echo '<div class="more-upload" style="padding-top: 0; padding-bottom: 0; height: 103px;padding: 0;width: 103px;text-align: center;">'."\n";
  81.     echo '<a href="?index=images&folder=private" title="Private">'."\n";
  82.     echo '<img src="images/private-folder.png" height="75" width="75">'."\n";
  83.     echo '<div style="text-align: center; line-height: 0;font-size: 12px;">Private</div>'."\n";
  84.     echo '</a>'."\n";
  85.     echo '</div>'."\n\n";
  86.    
  87.     //MOSTRAR CARPETAS PUBLICAS
  88.     $sql_folders_public = "SELECT * FROM FOLDERS WHERE IUID = '".$_SESSION['iuid']."' AND PARENT = 'PUBLIC'";
  89.     $result_sql_folders_public = mysql_query($sql_folders_public);
  90.    
  91.     while($folder_public = mysql_fetch_assoc($result_sql_folders_public)) {
  92.         if(strlen($folder_public['F_NAME']) > 10) {
  93.             $name_folder_public = substr($folder_public['F_NAME'], 0, 7)."...";
  94.         } else {
  95.             $name_folder_public = $folder_public['F_NAME'];
  96.         }
  97.        
  98.         echo '<div class="more-upload" style="padding-top: 0; padding-bottom: 0; height: 103px;padding: 0;width: 103px;text-align: center;">'."\n";
  99.         echo '<a href="?index=images&folder=public&set='.$folder_public['F_NAME'].'" title="'.$folder_public['F_NAME'].'">'."\n";
  100.         echo '<img src="images/folder.png" height="75" width="75">'."\n";
  101.         echo '<div style="text-align: center; line-height: 0;font-size: 12px;">'.$name_folder_public.'</div>'."\n";
  102.         echo '</a>'."\n";
  103.         echo '</div>'."\n\n";
  104.     }
  105.    
  106.     //MOSTRAR IMAGENES PUBLICAS
  107.     while($more = mysql_fetch_assoc($result_more)) {
  108.         echo '<div class="more-upload">'."\n";
  109.         echo '<div class="options-thumbnails">'."\n";
  110.         echo '<a href="http://web.com/preview.php?id='.$more['ID'].'" target="_blank"><div class="options-preview"></div></a>'."\n";
  111.         echo '<a href="#"><div class="options-share"></div></a>'."\n";
  112.         echo '<a href="http://web.com/web/functions/private.php?id='.$more['ID'].'"><div class="options-private"></div></a>'."\n";
  113.         echo '<a href="http://web.com/web/functions/delete.php?id='.$more['ID'].'&pin='.$more['PIN'].'"><div class="options-delete"></div></a>'."\n";
  114.         echo '</div>'."\n";
  115.         echo '<div class="thumbnail"><img src="'.$more['SQUARE_75'].'" height="75" width="75"></div>'."\n";
  116.         echo '</div>'."\n\n";
  117.     }
  118. }
  119.  
  120. ?>

El código funciona a la mitad porque muestra todas las imágenes y las carpetas publicas y también las carpetas e imágenes privadas, y si se accede a la primera carpeta publica creada muestra las imágenes de esa carpeta, pero si se quiere ver las demás carpetas publicas muestra todas las imágenes y carpetas publicas creadas.

Alguien que me puede ayudar a resolver este problema?

Saludos y gracias de antemano
  #2 (permalink)  
Antiguo 06/08/2012, 14:16
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problemas con $_GET

No entiendo cual podría ser el problema con $_GET si la lógica tu la has programado.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 06/08/2012, 14:18
Avatar de patriciomase  
Fecha de Ingreso: abril-2012
Ubicación: Mar del Plata
Mensajes: 323
Antigüedad: 12 años
Puntos: 34
Respuesta: Problemas con $_GET

por lo poco que entiendo, creo que el error está en la lógica con que planteas el if, lo que pasa que tenés mucho choclo de código y está dificil de ver..

yo haría un if con la condición completa para cada caso. sin usar elseif, porque si no me equivoco hay veces que se puede dar mas de una? o no??


como sugerencia deberías reestructurar ese codigo, tenés código practicamente repetido, al menos organizarlo en funciones, y quedaría todo mucho mas claro.
  #4 (permalink)  
Antiguo 06/08/2012, 14:37
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 14 años, 8 meses
Puntos: 5
Respuesta: Problemas con $_GET

Hola que tal, gracias a los dos por responder.

La verdad no supe como explicar bien el problema pero aquí lo replanteo el problema con un ejemplo.

En la pagina http://imagupload.x10.mx/login.php se puede acceder con el nombre de usuario forosdelweb y la contraseña 123456

Tengo 7 imágenes subidas en publicas y tres carpetas publicas, y en la carpeta animales, que fue la ultima que cree, tengo 3 imágenes y en la carpeta windows tengo 1 imagen, pero solo puedo ver las imágenes de la carpeta animales.

Y también tengo 2 imágenes en privadas y dos carpetas y una imagen esta en la carpeta boda y tampoco se pueden ver.

Saludos y gracias de antemano
  #5 (permalink)  
Antiguo 06/08/2012, 16:05
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 14 años, 8 meses
Puntos: 5
Respuesta: Problemas con $_GET

Hola que tal, algo que acabo de notar es que solo muestra las imágenes de la primera carpeta que fue creada por el usuario ya sea privada o publica. Alguien sabe porque pasa eso?

Saludos y gracias de antemano

Etiquetas: imagenes, mysql, sql
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 01:31.