Problema ID base de datos

Iniciado por Riki_89D, 22 Diciembre 2010, 23:54 PM

0 Miembros y 1 Visitante están viendo este tema.

Riki_89D

Hola cracks como andan?¿

veran me surgio un grabe problema en mi base de datos que no se resolver y por eos acudo a bosotros que confio en que me ayudareis :)

El caso es que estoi desarrollando una web de coches,dicha web incorpora unas imagenes de coches,estas imagenes tienen unos hipervinculos,el tema es que yo cuando aprieto uno de estos enlaces deberia mostrarme la finormacion del coche al que he clickkado,es deicrsi clicko al mercedes deberia mostrarme el ID de la base de datos correspondiente a ese coche,el ide es de tipo auto_increment para que cada coche tenga 1,2,3, i aisn sucesivamente,pero cuando clicko en el cocxe desgraciadamente me muestra la info de TODOS los coxes nose por que :S

Este es el codigo que tengo asta ahora:
Código (php) [Seleccionar]

while( $row = mysql_fetch_row( $squery ) ){
echo "<table border='0'>";
echo "<tr><td><a href=cotxe.php?id=".$row[0].">$row[1]</a></td></tr>";}
mysql_close($db);
?>
</table>


Código (php) [Seleccionar]

mysql_select_db($database,$db);
$query= "SELECT* FROM vehiculos WHERE id=$id";
$squery= mysql_query($query);
if (!$squery) { die('no rula query: '.mysql_error());}
while( $row = mysql_fetch_row( $squery ) ){




esto son los codes respectivamente,pues nada cuanod pulso al link d eun cohce (coche que en la base de datos tiene un ID asigando mediante auto_increment en vez de mostrarme solo la info de ese coche me muestra la de todos :S


alguna sugerencia?¿


saludos


4rkn63l

#1
Citar
if (!$squery) { die('no rula query: '.mysql_error());}
while( $row = mysql_fetch_row( $squery ) ){

¿Por que hacer un ciclo si la consulta devolvera un unico registro?

simplemente deberias mostrar el contenido del array devuelto, en este caso como utilizas mysql_fetch_row() debes utilizar el indice numerico correspondiente al campo que deseas mostrar. por ejemplo digamos que la marca y el modelo tienen los indices 1 y 2 respectivamente, entonces:


if (!$squery) { die('no rula query: '.mysql_error());}
$row = mysql_fetch_row( $squery );
echo $row[1];
echo $row[2];


pdta: seria bueno que plantees tus dudas en un solo post, al menos con distinto asunto.

cassiani

Riki_89D postea el código completo, yo no veo ningún error en la consulta, si el valor del id estuviera vacío te mostraría nada, me parece que hay algo más que no has posteado y es lo que afecta el resultado.

toma en cuenta lo que dice 4rkn63l  sobre el bucle y no imprimas la apertura de la etiqueta <table> dentro del otro ciclo que eso se debe imprimir una sola vez y es antes en este caso

while( $row = mysql_fetch_row( $squery ) ){
echo "<table border='0'>";
echo "<tr><td><a href=cotxe.php?id=".$row[0].">$row[1]</a></td></tr>";}
mysql_close($db);
?>
</table>


Coloca el código del archivo cotxe.php si no es muy largo y un ejemplo de como quedan los enlace luego de imprimirlos.