Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/05/2011, 01:59
javy
 
Fecha de Ingreso: septiembre-2002
Mensajes: 153
Antigüedad: 21 años, 8 meses
Puntos: 1
¿Dónde estoy fallando...?

Hola a todos:

Hace unos día lance una pregunta a un problemilla que tenía.

Nexus10 y JMSystem me dieron dos respuestas pero no me sirvieron.

Muy agradecido de todas formas...

La cuestión era la siguiente:

Tengo dos tablas, con los siguientes datos:

portfolioclientes
portfolioclientesid
portfolioclientestitulo
portfolioclientesfoto
portfolioclientestexto

portfolio
portfolioid
portfolioclientesid
portfoliofoto
portfoliotitulo
portfoliotexto

La id de la tabla portfolioclientes está unida a la tabla portfolio.

La cosa era tener una lista desplegable en una página donde se mostrarían todos los portfolioclientestitulo de la tabla portfolioclientes.

Al seleccionar uno de ellos, y sin salir de la página, debería de mostrar sus resultados correspondientes de la tabla portfolio.

Usando un viejo código que tenía de un buscador (que técnicamente hacía algo parecido) he llegado a montar este código:

Código:
<?php
				// CONECTANDO CON LA BASE DE DATOS
				require_once("../incluye/config.php");
				require_once("../incluye/funciones.php");
				// CONECTANDO A MYSQL
				$cnx = conectar();
				// CONSULTANDO PARA CLIENTES DEL PORTFOLIO
				$query_portfolioclientes = "SELECT * FROM portfolioclientes ORDER BY portfolioclientestitulo";
				$portfolioclientes = mysql_query($query_portfolioclientes, $cnx) or die(mysql_error());
				$row_portfolioclientes = mysql_fetch_assoc($portfolioclientes);
				$totalRows_portfolioclientes = mysql_num_rows($portfolioclientes);
				?>
				<form enctype="multipart/form-data" name="form1" method="post" action="">
			<tr>
			
				<td colspan="2" class="texto_paginas_formularios2">¡<U>Seleccionar primero un Cliente:</U>!&nbsp;&nbsp;&nbsp;
					<select name="portfolioclientesid" id="portfolioclientesid" onChange="submit()" class='texto_buscador'>
					<option value="" <?php if (!(strcmp("", $_POST['portfolioclientesid']))){echo "SELECTED";} ?>><?php 
					$numero_portfolioclientes = mysql_num_rows($portfolioclientes); 
					?>Hay <?php echo "$numero_portfolioclientes";  ?> Clientes en el Portfolio</option>
			      	<?php
					do {  
					?>
      				<option value="<?php echo $row_portfolioclientes['portfolioclientesid']?>"<?php if (!(strcmp($row_portfolioclientes['portfolioclientesid'], $_POST['portfolioclientesid']))) {echo "SELECTED";} ?>><?php echo $row_portfolioclientes['portfolioclientestitulo']?></option>
      				<?php
					} while ($row_portfolioclientes = mysql_fetch_assoc($portfolioclientes));
  					$rows = mysql_num_rows($portfolioclientes);
  					if($rows > 0) {
      				mysql_data_seek($portfolioclientes, 0);
	  				$row_portfolioclientes = mysql_fetch_assoc($portfolioclientes);
  					}
					?>
    				</select></td>
			</tr>
				</form>
				<?php
				// SI SE HA SELECCIONADO UN CLIENTE
				if (isset($_POST['portfolioclientesid'])) {
				$resultado = $_POST['portfolioclientesid'];
				}
				// CONSULTANDO
				$select = "SELECT DISTINCT portfolioid, portfolio.portfolioclientesid, portfoliofoto, portfoliotitulo, portfoliotexto, portfolioclientes.portfolioclientestitulo";
				$from = " FROM portfolio, portfolioclientes";
				$where = " WHERE portfolioclientes.portfolioclientesid=$resultado ORDER BY portfolioclientes.portfolioclientestitulo";
				
				if ($portfolioclientesid != "") {
				// SE HA SELECCIONADO UNA CATEGORIA
  				$where .= " AND portfolioclientes.portfolioclientesid=portfolio.portfolioclientesid ORDER BY portfolioclientes.portfolioclientestitulo";
				}

				$bus = mysql_query($select . $from . $where);
				//IMPRESION DE LOS DATOS
				while ($bu = mysql_fetch_array($bus)){
				$portfolioid = $bu["portfolioid"];
  				$portfoliofoto = $bu["portfoliofoto"];
  				$portfoliotitulo = $bu["portfoliotitulo"];
  				$portfoliotexto = $bu["portfoliotexto"];
  				$portfolioclientestitulo = $bu["portfolioclientestitulo"];
				echo "<tr>
					<td class='texto_paginas_clientes'>$portfolioclientestitulo</td>
					<td class='texto_paginas_clientes2'>$portfoliotitulo</td>
					<td rowspan='2' class='boton_paginas'><a href='portfolio_mod.php?portfolioid=$portfolioid' target='_self'><img src='images/editar_texto.png' /></a>&nbsp;&nbsp;<a href='portfolio_modfoto.php?portfolioid=$portfolioid' target='_self'><img src='images/editar_imagen.png' /></a><br><br><a href='portfolio_del.php?portfolioid=$portfolioid' target='_self'><img src='images/eliminar_texto.png' /></a></td>	
				</tr>
				<tr>
					<td class='texto_paginas_clientes'><img src='$portfoliofoto' width='100' /></td>
					<td class='texto_paginas_clientes2'>$portfoliotexto</td>					
				</tr>\n";				
				}
				if (!$bus) {
				echo "<tr>
					<td class='texto_paginas'>No se obtuvieron resultados</td>
					</tr>\n";
				}
				mysql_close($cnx);
				?>
Cuando se abre la página, directamente dice que "No se obtuvieron resultados", perteneciente al último TD del código.

Y al seleccionar cualquier nombre de la lista desplegable lo que me hace es: muestra todos los resultados de la tabla portfolio pero con el nombre de portfolioclientestitulo seleccionado.

¿Álguien me podría decir donde está el fallo?... Llevo dos días dándole vueltas y moviendo parte del código, pero no consigo el resultado esperado.

Gracias a todos y siento mucho el chapón que les he metido.

Un saludo:

Javy