Foros del Web » Programando para Internet » PHP »

lista de códigos (productos) que enlazan a una consulta

Estas en el tema de lista de códigos (productos) que enlazan a una consulta en el foro de PHP en Foros del Web. Hola Los saludo cordialmente. No soy muy conocedor de php por ello les quería pedir por favor si alguien me pudiera ayudar en escribir el ...
  #1 (permalink)  
Antiguo 11/05/2012, 13:10
 
Fecha de Ingreso: febrero-2006
Mensajes: 104
Antigüedad: 18 años, 2 meses
Puntos: 0
lista de códigos (productos) que enlazan a una consulta

Hola

Los saludo cordialmente. No soy muy conocedor de php por ello les quería pedir por favor si alguien me pudiera ayudar en escribir el código de lo siguiente

Tengo un php llamado articulo.php que se conecta a una tabla "articulo" mysql y me arroja los resultados del campo "modelo".
En el campo modelo hay 10 registros (10 códigos)

$con=mysql_connect("localhost","root","root");
$sql = "SELECT codigo FROM articulo ";
mysql_select_db("basededatos", $con);
$result = mysql_query($sql, $con);
$total = mysql_num_rows($result);

Todo ok hasta allí.

Mis preguntas son:
1. Cómo hago para que los resultados aparezcan uno debajo de otro? pues aparecen asi : codigo1codigo2codigo3....codigo10 (en una sola fila)
2. Cómo hago para darle a cada código1, código2 etc un enlace que al hacer click haga una consulta que devuelva en un nuevo "codigo.php" un html que ya poseo. El HTML es único para todos los 10 códigos pero en sus <td></td> deseo mostrar <?=$row['codigo'];?>. Es decir si yo hago click en código1 me muestra el HTML con los datos de 1 y si hago click en codigo2 me muestra el mismo HTML pero con los datos de codigo2 y así sucesivamente.


Muchas Gracias de antemano por su respuesta
Gracias
Qualito
  #2 (permalink)  
Antiguo 11/05/2012, 13:25
Avatar de exitoso23487  
Fecha de Ingreso: enero-2009
Mensajes: 49
Antigüedad: 15 años, 3 meses
Puntos: 8
Respuesta: lista de códigos (productos) que enlazan a una consulta

Ok
1) Como ya verificas si te regreso algún registro la consulta.
Código PHP:
if($total>0){
  while(
$row=mysql_fetch_array($result)){//preguntas si quedan registros sin obtener y el mysql_fetch_array te devuelve cada fila en forma de un arreglo
    
echo $row['codigo']."<br>";
  }
}
else{
echo 
"No existe ning&uacute;n registro en la tabla";

2)Es lo mismo que arriba (te lo coloco por separado para que se entienda mejor). Lo único a cambiar será el "echo" en el while
Código PHP:
echo "<a href=\"codigo.php\">".$row['codigo']."</a><br>"//acá lo que cambia es que al imprimir el código lo incluimos dentro de una etiqueta de link 
Espero te sirva.
  #3 (permalink)  
Antiguo 11/05/2012, 13:29
 
Fecha de Ingreso: febrero-2012
Mensajes: 21
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: lista de códigos (productos) que enlazan a una consulta

Hola

Para la primer opcion agrega


while($registros = mysql_fetch_assoc($result))
{
echo "<a href='codigo.php?codigo=$registros[campo1]'>".$registros['campo1']."</a><br>";
}
  #4 (permalink)  
Antiguo 11/05/2012, 13:31
Avatar de exitoso23487  
Fecha de Ingreso: enero-2009
Mensajes: 49
Antigüedad: 15 años, 3 meses
Puntos: 8
Respuesta: lista de códigos (productos) que enlazan a una consulta

Hey me olvide de algo en el punto 2. Me imagino que en la página "codigo.php" recibes el parámetro ($GET['id']) para sabes que parte del código vas a ejecutar (es decir para diferenciar que código es).
En ese caso el echo iría de la siguiente manera:

Código PHP:
echo "<a href=\"codigo.php?id=".$row['codigo']."\">".$row['codigo']."</a><br>"//acá lo que cambia es que al imprimir el código lo incluimos dentro de una etiqueta de link 
  #5 (permalink)  
Antiguo 11/05/2012, 18:16
 
Fecha de Ingreso: febrero-2006
Mensajes: 104
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: lista de códigos (productos) que enlazan a una consulta

exitoso23487 y Cairam

Los saludo cordialmente y les agradezco desde ya su desinteresado apoyo y tiempo en responder este post.

Probé en 02 files ambos códigos que Uds. sugirieron respectivamente:
Código PHP:
if($total>0){ 
  while(
$row=mysql_fetch_array($result))
{
    echo 
"<a href=\"codigo.php\">".$row['codigo']."</a><br>";
  } 

----------------------------------------------------------
Código PHP:
if($total>0){
while(
$registros mysql_fetch_assoc($result))
{
     echo 
"<a href='codigo.php?codigo=$registros[campo1]'>".$registros['campo1']."</a><br>";

Y los dos fueron acertados. Gracias !. (asumo son diferentes por el estilo o versión de php) Con ambos pude obtener una lista de "códigos" uno debajo de otro con el enlace de cada código a un único archivo código.php

Lo que no me quedo muy claro, es cómo se genera y realiza mi consulta en el file file codigo.php, porque si tengo 10 productos no creo que deberia hacer 10 consultas y 10 files destinos de enlace

Se que tiene que algo ver con lo que mencionaste exitoso23487
Cita:
Me imagino que en la página "codigo.php" recibes el parámetro ($GET['id']) para sabes que parte del código vas a ejecutar (es decir para diferenciar que código es).
Mas no lo entiendo bien. Por favor cómo podría hacer eso? que código es el que debería escribir en mi archivo "codigo.php" que recibe los enlaces de cada código?

El objetivo es que presione codigo1 y me lleve a codigo.php y dentro me arroje un HTML de descripción de codigo1, presione codigo2 y me lleva a codigo.php y dentro me arroje un HTML de descripción de codigo2 y así sucesivamente me muestre todo en código.php

Muchas Gracias por su apoyo
Qualito
  #6 (permalink)  
Antiguo 14/05/2012, 05:52
Avatar de exitoso23487  
Fecha de Ingreso: enero-2009
Mensajes: 49
Antigüedad: 15 años, 3 meses
Puntos: 8
Respuesta: lista de códigos (productos) que enlazan a una consulta

Ok y ajá, en este caso vamos a asumir que tienes un campo en la BD llamado "descripcion" para cada código, entonces lo que se haría es recibir el id del código en el archivo "codigo.php", entonces lo que se haría es con el id realizar otra consulta en dicho archivo.

Código en el principio de código.php

Código PHP:
$id=$GET['id'];//acá recibo el valor del id que viene en la variable [B]"id"[/B] a través del método GET
$con=mysql_connect("localhost","root","root");
$sql "SELECT codigo,descripcion FROM articulo WHERE id_codigo='$id'";
mysql_select_db("basededatos"$con); 
$result mysql_query($sql$con); 
$row=mysql_fetch_array($result); 
Posteriormente en tu html, para que se vea ordenado lo podrías colocar en una tabla
Código HTML:
<table>
<tr>
<td>
C&oacute;digo
</td>
<td>
Descripci&oacute;n
</td>
</tr>
<tr>
<td>
<?php
echo $row['codigo'];
?>
</td>
<td>
<?php
echo $row['descripcion'];
?>
</td>
</tr>
</table> 
Ojo esto sería una visualización muy general de lo que quieres, pero para lo que quieras hacer a nivel de interfaz con dicha consulta a la BD te servirá.
Espero que te sirva.
  #7 (permalink)  
Antiguo 15/05/2012, 22:15
 
Fecha de Ingreso: febrero-2006
Mensajes: 104
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: lista de códigos (productos) que enlazan a una consulta

Hola exitoso 23487

Muchas gracias por la ayuda nuevamente. Entendí el concepto más no lo he podido materializarlo como código. Mi idea es que el mismo file codigo.php muestre la tabla HTML que tu adecuadamente has ejemplificado. Todo en el mismo file.

He intentado lo siguiente, por favor si fueras tan amable, me pudieras orientar en corregir la parte del código que haya escrito yo mal. Mil Gracias.
(pd. no me quedó claro lo de id_codigo que colocaste)

Código PHP:
<body>
<?
$id
=$GET['id'];//acá recibo el valor del id que viene en la variable [B]"id"[/B] a través del método GET
$con=mysql_connect("localhost","root","root");
$sql "SELECT codigo,descripcion FROM articulo WHERE id_codigo='$id'";
mysql_select_db("basededatos"$con); 
$result mysql_query($sql$con); 
$total mysql_num_rows($result);

        
// Imprimimos los resultados
        
if ($total 0){ 
?>
            
            <table width=\"600\" border=\"1\">
            <tr>
                <th width=\"300\" bgcolor="#bd2033">Código</th>
                <th width=\"300\" bgcolor="#bd2033">Producto</span></th>
           </tr>
<?php
            
while ($row mysql_fetch_array($result)) { 
?>
            <tr>
                <td width="300"><?php echo $row['codigo'];?></td>
                <td width="300"><?php echo $row['descripcion'];?></td>
            </tr>
<?php
            
}
?>
</table>
            
<?php
        
} else { 
            
// En caso de no encontrar resultados
?>
            <p>No se encontraron resultados </p> 
<?php
        
}
    
?>
</body>

y me sale

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in F:\Programas\appserv\www\noticias\html\codigo.php on line 28

Gracias
Qualito
  #8 (permalink)  
Antiguo 17/05/2012, 05:38
Avatar de exitoso23487  
Fecha de Ingreso: enero-2009
Mensajes: 49
Antigüedad: 15 años, 3 meses
Puntos: 8
Respuesta: lista de códigos (productos) que enlazan a una consulta

Si es cierto, mi error.
La línea al recibir el parámetro "id" sería así
Código PHP:
 $id=$_GET['id']; 
Por escribirlo rápido se me había pasado ese "pequeño detalle" je je...
Espero te sirva.

Etiquetas: html, lista, mysql, productos, registro, sql, tabla
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 00:18.