Foros del Web » Programando para Internet » PHP »

Sigo con el mismo error 6 horas

Estas en el tema de Sigo con el mismo error 6 horas en el foro de PHP en Foros del Web. Llevo 6 horas con el mismo error, bueno la idea era mandar con un form un campo listbox previamente recogidas las opciones con una consulta ...
  #1 (permalink)  
Antiguo 16/03/2002, 19:57
 
Fecha de Ingreso: marzo-2002
Mensajes: 73
Antigüedad: 22 años, 1 mes
Puntos: 0
Sigo con el mismo error 6 horas

Llevo 6 horas con el mismo error, bueno la idea era mandar con un form un campo listbox previamente recogidas las opciones con una consulta a la bbdd.
Consigo introducir el resultado de la consulta en el listbox pero no consigo mandar a traves del formulario lo que me interesa para después utilizarlo.
La síntaxis que utilizo es la siguiente:
Cita:
<select name='categ'>
<?
$sas="select * from categorias";
$SQLquery=mysql_query($sas,$link);
while($Registro = mysql_fetch_array($SQLquery)) { ?>
<option value=<?$Registro["id_cat"]?>><? print($Registro["name"]); ?>
<? } ?>
</select>
Un saludo para la gente del foro y MUCHISIMAS GRACIAS POR ADELANTADO
  #2 (permalink)  
Antiguo 16/03/2002, 20:43
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Re: Sigo con el mismo error 6 horas

Yo escribiria el codigo asi:

<select name='categ'>
<?
$sas="select * from categorias";
$SQLquery=mysql_query($sas,$link);
while($Registro = mysql_fetch_array($SQLquery)) {
echo "<option value=$Registro['id_cat']>$Registro['name']";
}
?>
</select>

como veras .. se sigue incrustando PHP sobre HTML .. eso si, la linea (HTML) que tenemos que generar (con los datos obtenidos del query .. se envia con un echo a HTML).

Pruebalo, y sobre todo edita el codigo HTML generado por tu script .. y mira que "select" te genera .. ahi podras ver el fallo que tienes (si es de consulta-querry .. o de otro indole).

Un saludo,
  #3 (permalink)  
Antiguo 16/03/2002, 20:48
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Re: Sigo con el mismo error 6 horas

Ah, otro detalle (off-topic):

Si para la consulta a tu tabla en cuestion .. solo usas un par de campos (id y nombre) .. haz mejor un query del tipo:

SQLquery="SELECT id,nombre FROM tabla";

en vez de un "*" .. con eso seleccionas todos los campor de la tabla.. para luego quedarte solo con dos. El metodo que te propongo optimiza las consultas en tiempo y memoria requerida para la consulta a la BD.

Todo esto en el supuesto caso de que mas abajo en el codigo no uses los restantes campos de esa tabla o solo tengas esos dos campos.

Un saludo,
  #4 (permalink)  
Antiguo 17/03/2002, 06:55
 
Fecha de Ingreso: marzo-2002
Mensajes: 73
Antigüedad: 22 años, 1 mes
Puntos: 0
Re: Sigo con el mismo error 6 horas

Muchiiiiisimas gracias Cluster, lo he probado y me sale el siguiente error:
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in c:\apache\htdocs\links\admin\ingresar.php on line 37
En esa línea tengo lo siguiente:
echo "<option value=$Registro['id_cat']>$Registro['name']";
Además uso el phpEd y en los arrays de ese tipo me suele mostrar el $Registro de azul y ahora me lo muestra marron.
Os estoy enormemente agradecidos a todos, ya os dejare el weblinsks a quien le interese, es casi hecho por vosotros.
Un Saludo.
  #5 (permalink)  
Antiguo 17/03/2002, 07:20
 
Fecha de Ingreso: marzo-2002
Mensajes: 73
Antigüedad: 22 años, 1 mes
Puntos: 0
Re: Sigo con el mismo error 6 horas

Eyyy, por FIN...
He cambiado esa línea por la siguiente:
printf ("<option value=%d>%s",$Registro['id_cat'], $Registro['name']);
Y ya me funciona...
muchas gracias Cluster por lo de la consulta, no lo habia pensado.
Un Saludo
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 13:25.