Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Cergath en 9 Noviembre 2009, 02:39 am



Título: Consulta: PHP
Publicado por: Cergath en 9 Noviembre 2009, 02:39 am
Hola, realizé unza función para armar un select mediante un array el tema es que yo de ahí saco 2 select:

Uno para dar de alta y otro para modificar por lo cual lo que yo quiero es que cuando lo visualizo para modificar me marque con selected el privilegio del mismo pero no logro poder hacerlo funcionar, dejo el código por si alguien me quiere ayudar.
Código
  1. function privilegios($name)
  2. {
  3.    $array_priv = array("Seleccionar", "Slot reservado", "Administrador común", "Administrador Semi Full", "Administrador Full", "Staff", "Dueño");
  4.    $num_priv = count($array_priv);
  5.  
  6.    echo "<select name=\"$name\">\n";
  7.  
  8.    $query = "SELECT * from admins";
  9.    $result = mysql_query($query) or die(mysql_error());
  10.  
  11.    for ($i = 0 ; $i < $num_priv; $i++)
  12.    {            
  13.        if ($i == $row[privilegio])
  14.            echo "<option value=\"$i\" selected>$array_priv[$i]</option>\n";
  15.        else
  16.            echo "<option value=\"$i\">$array_priv[$i]</option>\n";
  17.    }
  18.  
  19.    echo "</selected>\n";      
  20. }  
  21.  

La columna privilegio va desde 1 a 6 y chequea si el $i (empieza en 0 y 0 equivale a seleccionar) es igual al $row[privilegio] pero el tema es que me hace el loop varias veces en el mismo select ni me da el resultado esperado.

Gracias


Título: Re: Consulta: PHP
Publicado por: cassiani en 9 Noviembre 2009, 03:00 am
porque $row[privilegio] está vacio, fijate que nunca lo cargas.. te haría falta el
Código:
$row = mysql_fetch_assoc($result)

Código:
*http://www.php-es.com/function.mysql-fetch-array.html