Ver Mensaje Individual
  #12 (permalink)  
Antiguo 07/07/2010, 21:16
Avatar de shakaran
shakaran
 
Fecha de Ingreso: agosto-2005
Ubicación: España - Ciudad Real
Mensajes: 374
Antigüedad: 18 años, 7 meses
Puntos: 7
Respuesta: Problema con variabes desde un Select en php

Bueno prueba este código corregido, abajo te pongo todo lo corregido y las notas que deberías tomar para desarrollar futuros códigos:

Código PHP:
Ver original
  1. <?
  2.     $dbh = mysql_connect('localhost', 'noroot', '')
  3.     or die('MySQL Connect Error: No hay conexión a la Base de Datos: '.mysql_error());
  4.     mysql_select_db('colmesa', $dbh);
  5.     $result = mysql_query("SELECT name FROM recipe ORDER BY name");
  6.     echo '<br /><br />';
  7. ?>
  8.     <h4>Seleccione la receta y pulse OK!</h4>
  9.     <form name="receta" action="recetas.php" method="get">
  10.         <select class="temas" name="sureceta" size=5>
  11.         <?
  12.             while($row=mysql_fetch_assoc($result))
  13.             {
  14.                 echo '<option value='.$row['nombre'].'>'.$row['nombre'].'</option>';
  15.             }
  16.         ?>
  17.         </select>
  18.         <br />
  19.         <input type="submit" name="OK" value="OK!" />
  20.     </form>
1 - No es recomendado usar el usuario root para mysql (aunque estes en localhost) create un
usuario para las consultas con los privilegios necesarios.
2 - En mysql_error() no debes meter ningún parametro de cadena (probablemente por eso no te funcionara.
3 - Usa variables en ingles (son más cortas, tu código sera internacional, mejor para desarrollos en grupo y aprenderas ingles)
eso incluye tambien a los campos y tablas de MySQL
4 - Usa comillas simples para cadenas php siempre que sea posible (a menos que quieras meter una variable php dentro para
que se interprete o dentro de una consulta SQL que suele implicar comillas simples.
5 - Para comentarios de una línea usa # en vez de // es más pro y se escribe un carácter menos.
6 - No pongas dobles echos, cuando puedes utilizar uno sólo.
7 - Los <br> no se escriben asi, llevan una etiqueta de cierre solo y deben ponerse así <br /> para cumplir estándares HTML.
8 - Deja un espacio antes y despues de usar un operador (por ejemplo en el =, +, *, etc) y cuando uses la coma , o bien entre parametros de funciones, mejora la legibilidad del código.
9 - En vez de usar $con o $conexion o $connect para guardar el resultado de mysql_connect usa $dbh (Database host) es más breve.
10 - Las directivas SQL se escriben en mayúsculas, es mas claro y mejora la legibilidad.
11 - Los input tambien llevan />
12 - Identa el código
__________________
Quijost Backend Engineer - www.quijost.com - Hosting rápido, eficiente y profesional
Blog: www.shakaran.net