Hola que tal amigos de la web, Tengo una gran duda, estoy haciendo ejercicios para aprender mas PHP, mi meta es crear un carro de compras:
 
Bueno el codigo del ejercicio es este es este 
buscacoches.php   
Código php:
Ver original- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
- <html xmlns="http://www.w3.org/1999/xhtml"> 
- <head> 
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
- <title>Untitled Document</title> 
- </head> 
-   
- <body> 
- <ul> 
- <li><a href="index.php">HOME</a></li> 
- <li><a href="forminserta.html">Inserta Coche</a></li> 
- <li><a href="formbusca.html">Busca Coche</a></li> 
- </ul> 
- <p align = "center"> 
- <h2>RESULTADO DE LA BÚSQUEDA</h2> 
- <?php 
- $host="localhost"; 
- $user="root"; 
- $password = ""; //Poner aquí nuestra contraseña. 
- $db="racer"; 
-   
- WHERE 
- marca LIKE '$marca' or modelo LIKE '$modelo' or fecha LIKE '$fecha' or precio LIKE '$precio'",$enlace); 
-   
- $id= $row["id"]; 
- $marca= $row["marca"]; 
- $modelo= $row["modelo"]; 
- $fecha= $row["fecha"]; 
- $color = $row["color"]; 
-   
- echo '<table width="100%" border="0">'; 
- echo '<tr>'; 
- echo '<td width="12%"><a href=modificarcoche.php?id='.$id.'>Modificar</a></td>'; 
- echo '<td width ="12%"><a href=borrarcoche.php?id='.$id.'>Borrar</a></td>'; 
- echo '<td width="12%"><a href=catalogo.php?id='.$id.'>Datos</a></td>'; 
- echo '<td width="26%">'.$marca.'</td>'; 
- echo '<td width="26%">'.$modelo.'</td>'; 
- echo '<td width="26%">'.$fecha.'</td>'; 
- echo '<td width="26%">'.$color.'</td>'; 
- echo '</tr>'; 
- echo '</table>'; 
- echo '<hr size = 2 color = ffffff width = 100% align = left>';} 
- ?> 
- <a href="http://localhost/formbusca.htm">Volver 
- </body> 
- </html> 
Este este es el resultado de una busqueda teniendo como funcion : modificar(modifica el coche), borrar(borrar cohce), datos (datos del coche). como pueden ver cada una redireccionando a una pag.php. dando como variable en la URL de "id"
Hasta aqui esta bien todo me da, pero si quiero modificar el choche: modificacoche.php:   
Código php:
Ver original- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
- <html xmlns="http://www.w3.org/1999/xhtml"> 
- <head> 
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
- <title>Untitled Document</title> 
- </head> 
-   
- <body> 
- <ul> 
- <li><a href="index.php">HOME</a></li> 
- <li><a href="forminserta.html">Inserta Coche</a></li> 
- <li><a href="formbusca.html">Busca Coche</a></li> 
- </ul> 
- <p align = "center"> 
- <h1><?php echo $id = $_POST[id]; ?></h1> 
- <form name="form" action= "modificarcoche2.php" method="post"> 
- <strong><h2>MODIFIQUE LOS DATOS DEL VEHÍCULO.</h2></strong> 
- <hr size = "8" color = "ffffff" width = "100%" align = "left"> 
- <form name="form" action= "modificarcoche2.php" method="POST"> 
- Seleccione la marca de su vehículo: 
- <select name="marca"> 
- <option value="alfa romeo">Alfa Romeo </option> 
- <option value="audi">Audi </option> 
- <option value="bmw">BMW </option> 
- <option value="chrysler">Chrysler </option> 
- <option value="ctroen">Citroen </option> 
- <option value="daewoo">Daewoo </option> 
- <option value="fiat">Fiat </option> 
- <option value="ford">Ford </option> 
- <option value="honda">Honda </option> 
- <option value="hyundai">Hyundai </option> 
- <option value="jeep">Jeep </option> 
- <option value="kia">Kia </option> 
- <option value="lancia">Lancia </option> 
- <option value="lexus">Lexus </option> 
- <option value="mazda">Mazda </option> 
- <option value="mercedes">Mercedes </option> 
- <option value="rnitsubishi">Mitsubishi </option> 
- <option value="nissan">Nissan </option> 
- <option value="opel">Opel </option> 
- <option value="peugeot">Peugeot </option> 
- <option value="porsche">Porsche </option> 
- <option value="renault">Renault </option> 
- <option value="rover">Rover </option> 
- <option value="scab">Saab </option> 
- <option value="seat">Seat </option> 
- <option value="skoda">Skoda </option> 
- <option value="toyota">Toyota </option> 
- <option value="volkswagen">Volkswagen </option> 
- <option value="volvo">Volvo </option> 
- </select> 
- <br> 
- <h5>Indique el modelo:<input name="modelo" type="text" size="45"></h5> 
- <h5>Indique el color:<input name="color" type="text" size="48"></h5> 
- <h5>Combustible: 
- <input name="combustible" type="radio" value="diesel" >Diesel 
- <input name="combustible" type="radio" value="gasolina" checked>Gasolina 
- </h5> 
- <h5>Año de matriculación:<input name="fecha" type="text" size="10"></h5> 
- <h5>Precio:<input type="text" name="precio" size="10"></h5> 
- <h5> 
- <hr size = "4" color = "ffffff" width = "100%" align = "left"> 
- <input type="hidden" name="id" value="<?php $_POST[id] ?>"/> 
- <input name="Enviar" type="submit" value="Enviar" /> 
- </h5> 
- </form> 
- </body> 
- </html> 
Esta es la pagina modificar.php, eh aqui el problema: tengo al principio como orden enseñar la variable id (se supone que me la tendria que dar dado que la mande en la URL) y no me da nada, trato de mandar en esta pag por medio de un hidden la variables id para la base de datos de coches y ir a la siguiente pagina 
modificarcoche2.php   
Código php:
Ver original- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
- <html xmlns="http://www.w3.org/1999/xhtml"> 
- <head> 
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
- <title>Untitled Document</title> 
- </head> 
-   
- <body> 
- <ul> 
- <li><a href="index.php">HOME</a></li> 
- <li><a href="forminserta.html">Inserta Coche</a></li> 
- <li><a href="formbusca.html">Busca Coche</a></li> 
- </ul> 
- <p align = "center"> 
- <h2>DATOS DEL VEHÍCULO MODIFICADOS</h2> 
- <? 
- // connect() 
- function connect() { 
- $db_host = 'localhost'; 
- $db_user = 'root'; 
- $db_pass = ''; 
- $db_name = 'racer'; 
-   
- } 
- connect(); 
-   
- //Variables 
- $id = $_POST[id]; 
- $marca = $_POST[marca]; 
- $modelo = $_POST[modelo]; 
- $combustible = $_POST[combustible]; 
- $color = $_POST[marca]; 
- $fecha = $_POST[fecha]; 
- $precio = $_POST[precio]; 
-   
- echo $id; 
- echo $marca; 
- echo $modelo; 
- echo $combustible; 
- echo $color; 
- echo $fecha; 
- echo $precio; 
-   
-   
- ///////////Consuta: Actualizacion de datos de carros 
- $query = "UPDATE `racer`.`carros` 
- SET 
- marca='$marca', modelo ='$modelo', combustible='$combustible', color = '$color', fecha = '$fecha', precio = '$precio' 
- WHERE 
- id ='$id'"; 
- echo 'Se han actualizado los Datos'; 
-   
- ?> 
- <a href="formbusca.html">Volver</a> 
- Volver 
- </body> 
- </html> 
en esta pag modificarcoche2.php No sigue mostrando la variable id, ni las otras variables... 
Podrian ayudarme. acepto criticas mejoras en el codigo etc..
dudas:
hay alguna manera de ahorrarse el estar declarando las variables que mandas por el metodo post: ejemplo $id = $_POST[id];