Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Marciano_79

#31
Hola muchas gracias por responder e intentar ayudarme.... He probado hacer los ajustes que me recomiendan, pero el resultado lamentablemente sigue igual,  incluso en algunos casos aplicando los cambios, el resultado es que se desaparece algunas galerías de fotos y se mezclan todos los resultados en las diferentes categorías de forma idéntica... con estas consultas

Código (sql) [Seleccionar]

1

"SELECT DISTINCT
 galerias.IDGALERIA,
 galerias.FKCATEGORIA_ID,
 galerias.DESCRIPCION,
 galerias.NOMBRECATEGORIA,
 galerias.TITULO,
 DATE_FORMAT( galerias.FECHA_ALTA, '%d/%m/%Y' ) AS FECHA_ALTA,
 categoria.IDCATEGORIA,
 categoria.NOMBRE_CATEGORIA  
   

FROM galerias INNER JOIN categoria ON galerias.NOMBRECATEGORIA = categoria.NOMBRE_CATEGORIA
WHERE galerias.NOMBRECATEGORIA='$id'";

----------------------------------------------------------------------------------
2

"SELECT DISTINCT
 galerias.IDGALERIA,
 galerias.FKCATEGORIA_ID,
 galerias.DESCRIPCION,
 galerias.NOMBRECATEGORIA,
 galerias.TITULO,
 DATE_FORMAT( galerias.FECHA_ALTA, '%d/%m/%Y' ) AS FECHA_ALTA,
 categoria.IDCATEGORIA,
 categoria.NOMBRE_CATEGORIA  
   

FROM galerias INNER JOIN categoria ON galerias.NOMBRECATEGORIA='$id' AND categoria.NOMBRE_CATEGORIA = '$id'";


y el resultado es este: Lo que está en rojo es el valor devuelto, y lo que está en azul es como debería estar (con este resultado les muestro que no tengo solo una categoría de galerías fotográficas)

PD: deje tal cual la fecha ya que con el cambio propuesto este dejaba de mostrarse



Resumen: tengo 3 galerías Retrato, 2 galerías Moda, y 1 galería Infantil. Total 6 galerías creadas... hasta el momento solo veo 5 galerías juntas sin orden y todas aparecen de igual forma por cada pagina de cada categoría

Ahora voy a dejar el código completo ya que entremedio hay otras consultas de otras tablas que tal vez puedan estar generando conflicto...

Este es para el menú donde llamo a las categorías, y se impriman en pantalla por su nombre:

index.php

Código (sql) [Seleccionar]
<?php
include('panel/_setup.php');

$consulta =<<<SQL
SELECT DISTINCT
     IDCATEGORIA,
     NOMBRE_CATEGORIA
FROM
     categoria

INNER JOIN galerias ON categoria.IDCATEGORIA=galerias.FKCATEGORIA_ID

ORDER BY
IDCATEGORIA ASC 
 
SQL;

$filas mysqli_query($cnx$consulta);

?>


<title>Galerías</title>
<link rel="stylesheet" href="css/stylenew.css"/>
</head>

<body>
<div id="principal">
<h1>Selección de Categorias</h1>
      <?php


while( $id mysqli_fetch_assoc($filas)){
     
echo '<div>';
echo "<a href='galeria-fotografica.php?cat=$id[NOMBRE_CATEGORIA]'>$id[NOMBRE_CATEGORIA]</a>";
echo '</div>'
}
?>


</div>


Resultado: galería-fotografica.php?cat=Retrato
              galería-fotografica.php?cat=Moda
              galería-fotografica.php?cat=Infantiles


y el otro código donde esta la consulta que me da problemas:

galeria-fotografica.php

Código (php) [Seleccionar]
<?php
include('panel/_setup.php');

?>

<title>Galerías</title>
<link rel="stylesheet" href="css/stylenew.css"/>
</head>

<body>
<div id="principal">
 
<?php
    
if( isset( $_GET['gal'] ) ){
$id $_GET['gal'];
$consulta "SELECT DESCRIPCION, TITULO FROM galerias WHERE IDGALERIA='$id'";
$filas mysqli_query($cnx$consulta);
$col mysqli_fetch_assoc($filas);

echo "<h2>$col[TITULO]</h2>";
        echo 
"<p>$col[DESCRIPCION]</p>";
        echo 
'<a href="javascript:history.back(-1);" title="Ir la página anterior">VOLVER ATRAS</a>';
        echo 
'<div id="ver_galeria">';

        
$consulta ="SELECT * FROM FOTOS WHERE FKGALERIA='$id' AND ESTADO='visible' ORDER BY POSICION";
        
$filas mysqli_query($cnx$consulta);
        while( 
$col mysqli_fetch_assoc($filas)){
echo '<div>';
echo '<img src="fotos/'.$col['ARCHIVO'].'" alt="'.$col['NOMBRE'].'" />';

echo '</div>';
  }
          echo 
'</div>';   


}else{


if( isset( $_GET['cat'] ) ){  
    $id $_GET['cat'];
        
$consulta ="SELECT DISTINCT 
                         galerias.IDGALERIA,
         galerias.FKCATEGORIA_ID, 
         galerias.DESCRIPCION, 
 galerias.NOMBRECATEGORIA, 
 galerias.TITULO,
         DATE_FORMAT( galerias.FECHA_ALTA, '%d/%m/%Y' ) AS FECHA_ALTA, 
 categoria.IDCATEGORIA,
                         categoria.NOMBRE_CATEGORIA    
     

FROM galerias INNER JOIN categoria ON galerias.NOMBRECATEGORIA='
$id' AND categoria.NOMBRE_CATEGORIA = '$id'";
         

$filas mysqli_query($cnx$consulta);
$columna mysqli_fetch_assoc($filas);
echo "<h1>Galerías $columna[NOMBRECATEGORIA]</h1>";
    
}
echo '<div id="listado">';
while( $columna mysqli_fetch_assoc($filas)){
  $id $columna['IDGALERIA'];
  $subconsulta "SELECT ARCHIVO FROM fotos WHERE FKGALERIA='$id' AND ESTADO='visible' ORDER BY RAND() LIMIT 1";
  $filas2 mysqli_query($cnx$subconsulta);
  $datos mysqli_fetch_assoc($filas2);
  
  $nombre_archivo $datos['ARCHIVO'];
  
  echo '<div>';  
  echo "<h2>$columna[TITULO]</h2>";
  echo "<div>$columna[FECHA_ALTA]</div>";
  if( $nombre_archivo != null ){
  echo "<img src='fotos/$nombre_archivo' alt='Preview de la galeria' />";
  }
  echo "<p>"nl2br$columna['DESCRIPCION'])."</p>";
  echo "<a href='galeria-fotografica.php?gal=$columna[IDGALERIA]'>VER GALERIA</a>";
  echo '</div>';
  }
  echo '</div>';



    }

 

?>



</div>


y la info de mis tablas:

Estructura de tabla para la tabla categoria


|Columna|Tipo|Nulo|Predeterminado

IDCATEGORIA|tinyint(25)|No
NOMBRE_CATEGORIA varchar(100)|Sí NULL

Volcado de datos para la tabla categoria


|1|Retrato
|2|Moda
|3|Infantiles



Estructura de tabla para la tabla galerias


|Columna|Tipo|Nulo|Predeterminado

IDGALERIA tinyint(25) No
TITULO varchar(100) Sí NULL
FECHA_ALTA datetime Sí NULL
DESCRIPCION text Sí NULL
NOMBRECATEGORIA varchar(100) Sí NULL
FKCATEGORIA_ID tinyint(20) Sí NULL

Volcado de datos para la tabla galerias

|1|Retrato-1| 2016-03-30 14:54:27 |bla,bla,bla |Retrato  |1
|2|Infantiles-1 |2016-03-30 14:55:22 |bla,bla,bla,bla,bla,bla |Infantiles  |3
|3|Retrato-2|2016-03-30 14:57:18|bjbbbk|Retrato |1
|4|Moda-1|2016-03-30 14:59:03|hvv,vgvhjvjhv,j|Moda |2
|5|Moda-2|2016-03-30 14:59:55|vhvhv|Moda |2
|6|Retrato-3|2016-03-30 15:00:35|cttdtftdtft|Retrato |1


dejo tambien la de tabla fotos (que no creo que sea de importancia, pero porsiacaso..



Estructura de tabla para la tabla fotos


|Columna|Tipo|Nulo|Predeterminado

|IDFOTO |int(25) |No|
|NOMBRE|varchar(100)|Sí|NULL
|ARCHIVO|varchar(100)|Sí|NULL
|POSICION|tinyint(3)|Sí|NULL
|ESTADO|enum('visible', 'invisible')|Sí|NULL
|FKGALERIA|tinyint(3)|Sí|NULL

Volcado de datos para la tabla fotos

|1|gdrgdrg |6ebbdb026d9c9.jpg|1|visible|1
|2|hajhajhjsh |fe4ba595921ffbbdd8.jpg|2|visible|1
|3|ajajskanka |d4cc19c8fbfdbe.jpg|1|visible|2
|4|nnjnjnjn |3d52dc1b7b.jpg|2|visible|2
|5|jojojojo |ab5788e01f4.jpg|1|visible|3
|6|knknknk |430ca7182b3.jpg|2|visible|3
|7|ububu |ad5d51bea35ff.jpg|1|visible|4
|8|addwbdb |b93635e8e092.jpg|2|visible|4
|9|sincinansn|6ba1b35d71d4d519748e9aa8b42c07f1.jpg|1|visible|5
|10|scknakcnkasnc|4dee3e3a41c53fd82de1b3227d1df372.jpg|2|visible|5
|11|sjcjsajcbjasbcjab|bf681c114a1f857ab8883143f4660246.jpg|1|visible|6
|12|scsjcnjasncj|629eef20bc75c576e931cc181296a3d7.jpg|2|visible|6


Espero estos datos puedan aportar mayor ayuda... espero con ansias sus respuestas.. muchas gracias de verdad.!
#32
 :o Ohh gracias se pasaron voy a probar de inmediato toda estas respuestas que me han entregado... mil gracias, les comento pronto los resultados.!!
#33
cambiando la consulta o forma seria opción?
#34
Gracias por tu tiempo y disponibilidad, pero la verdad esto no quiere funcionar, probé así como me dices y nada..  

"SELECT DISTINCT  
 (galerias.IDGALERIA),
  galerias.TITULO,
  galerias.DESCRIPCION,
  galerias.NOMBRECATEGORIA,
  galerias.FKCATEGORIA_ID,
  DATE_FORMAT( galerias.FECHA_ALTA, '%d/%m/%Y' ) AS galerias.FECHA_ALTA,
  categoria.IDCATEGORIA,
  categoria.NOMBRE_CATEGORIA  

FROM galerias INNER JOIN categoria ON galerias.NOMBRECATEGORIA=categoria.'$id'";


me sale esto: Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\prueba\galeria-fotografica.php on line 54

sinceramente me tiene mal la situación... que crees que pueda hacer? Gracias por tu ayuda..
#35
no funciona amigo, todo queda igual..  :(
#36
Hola a todos, favor chicos.. estoy hace un mes tratando de poder solucionar una consulta que me está entregando registros duplicados, en algunos casos hasta triplicados... trabajo con MySqli y la verdad es que he probado de tantas formas que ya no se que más hacer... no soy programador, por ello si me explico mal favor tener paciencia vale? estas son mis tablas..

Tabla categoria:
IDCATEGORIA
NOMBRE_CATEGORIA

Tabla galerias:
IDGALERIAS
TITULO
DESCRIPCION
FECHA_ALTA
NOMBRECATEGORIA
FKCATEGORIA_ID

mi codigo:

if( isset( $_GET['cat'] ) ){  
   $id = $_GET['cat'];
       $consulta ="SELECT DISTINCT
  IDGALERIA,
  TITULO,
  DESCRIPCION,
  NOMBRECATEGORIA,
  FKCATEGORIA_ID,
  DATE_FORMAT( FECHA_ALTA, '%d/%m/%Y' ) AS FECHA_ALTA,
  IDCATEGORIA,
  NOMBRE_CATEGORIA  

FROM galerias a INNER JOIN categoria b ON a.NOMBRECATEGORIA='$id'";
       

$filas = mysqli_query($cnx, $consulta);
$columna = mysqli_fetch_assoc($filas);
echo "<h1>Galerías $columna[NOMBRECATEGORIA]</h1>";
   
}


dejo una imagen del resultado devuelto actualmente.. la tabla que se ve en rojo es lo que obtengo y la que esta en azul es lo que realmente quiero que se visualice..



Esto es el resultado de la categoría retrato, pero ocurre también en las distintas otras categorías que tengo, moda, infantiles etc... todas entregan el mismo resultado... Porfavor alguien amable me pueda ayudar.. de ante mano muchas gracias.!!