Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/05/2010, 11:25
Avatar de neoarcangel
neoarcangel
 
Fecha de Ingreso: enero-2005
Ubicación: España
Mensajes: 566
Antigüedad: 19 años, 2 meses
Puntos: 5
¿Problema con un if?

Hola, haber si me explico, en mi proyecto, tengo un codigo que se inserta en la base de datos con select pero el contenido de los select no es dinamico, si no escrito manualmente.

Me explico

Tengo este codigo.

Código PHP:
<tr>
<
td>Sexo</td>
<
td><select name="sexo">
        <
option value="varon">Varon</option>
        <
option value="hembra">Hembra</option>
    </
select>
</
td>
</
tr>

<
tr>
<
td>Estado Civil</td>
<
td><select name="estadocivil">
        <
option value="soltero/a" selected>Soltero/a</option>
        <
option value="casado">Casado/a</option>
        <
option value="arrejuntado/a">Arrejuntado/a</option>
        <
option value="divorciado/a">Divorciado/a</option>
        <
option value="sin pareja previa">Sin pareja previa</option>
        <
option value="menor de edad">Menor de edad</option>
    </
select>

</
td>
</
tr>

<
tr>
<
td>Sexualidad</td>
<
td><select name="sexualidadpersonaje">
        <
option value="heterosexual">Heterosexual</option>
        <
option value="Homosexual">Homosexual</option>
        <
option value="Bisexual">Bisexual</option>
    </
select>
</
td>
</
tr
Solo he extraido las partes que interesan, obviamente todo esto iria con la etiqueta table y demas.

Pues bien estoy actualizando datos con update y quiero de algún modo que aparezcan selecionados los que esten insertados en la base de datos y luego los demas SIN QUE SE REPITA, el seleccionado.

Por ejemplo

Este codigo.

Código PHP:

<tr>
<
td>Sexo</td>
<
td><select name="sexo">
        <
option value="varon">Varon</option>
        <
option value="hembra">Hembra</option>
    </
select>
</
td>
</
tr
Imaginemos que el codigo insertado es varón, entonces eso deberia aparecer seleccionado y debajo apareceria para elegir hembra, quedaria asi, el codigo final extraido con el navegador


Código PHP:
<tr>
<
td>Sexo</td>
<
td><select name="sexo">
        <
option value="varon" selected>Varon</option>
        <
option value="hembra">Hembra</option>
    </
select>
</
td>
</
tr
pero realmente no sé como hacerlo, por que de la forma que lo tengo yo, me genera siempre el valor seleccionado y luego todos los demas, por lo que el valor seleccionado apareceria repetido.

Tal que asi.

Código PHP:
<tr>
<td>Sexo</td>
<td><select name="sexo">
    <?php 
        
if($registros["sexo"]!="")
        {
    
?>
        <option value="<?php echo $registros["sexo"];?>" selected><?php echo $registros["sexo"];?></option>
        <option value="varon">Varon</option>
        <option value="hembra">Hembra</option>

    <?php 
        
}
        else
        {
    
?>
        <option value="varon">Varon</option>
        <option value="hembra">Hembra</option>
        <?php 
        
}
    
?>
    </select>
</td>
</tr>

<tr>
<td>Estado Civil</td>
<td><select name="estadocivil">
<?php 
        
if($registros["estado_civil"]!="")
        {
    
?>    
        <option value="<?php echo $registros["estado_civil"];?>" selected><?php echo $registros["estado_civil"];?></option>
        <option value="soltero/a">Soltero/a</option>
        <option value="casado">Casado/a</option>
        <option value="arrejuntado/a">Arrejuntado/a</option>
        <option value="divorciado/a">Divorciado/a</option>
        <option value="sin pareja previa">Sin pareja previa</option>
        <option value="menor de edad">Menor de edad</option>
    <?php 
        
}
        else
        {
    
?>
        <option value="soltero/a" selected>Soltero/a</option>
        <option value="casado">Casado/a</option>
        <option value="arrejuntado/a">Arrejuntado/a</option>
        <option value="divorciado/a">Divorciado/a</option>
        <option value="sin pareja previa">Sin pareja previa</option>
        <option value="menor de edad">Menor de edad</option>
        <?php 
        
}
    
?>
    </select>

</td>
</tr>

<tr>
<td>Sexualidad</td>
<td><select name="sexualidad">
    <?php 
        
if($registros["sexualidad"]!="")
        {
    
?>    
        <option value="<?php echo $registros["sexualidad"];?>" selected><?php echo $registros["sexualidad"];?></option>
        <option value="heterosexual">Heterosexual</option>
        <option value="Homosexual">Homosexual</option>
        <option value="Bisexual">Bisexual</option>
    <?php 
        
}
        else
        {
    
?>
        <option value="heterosexual">Heterosexual</option>
        <option value="Homosexual">Homosexual</option>
        <option value="Bisexual">Bisexual</option>
        <?php 
        
}
    
?>
    </select>
</td>
</tr>
¿Alguna idea para que no se repita el valor seleccionado?
__________________
Mi equipo

Gigabyte GA-MA770T-UD3P Socket AM3|OZC StealthxStream 600 w | Gigabyte Radeon HD 4770 512MB GDDR5| AMD Phenom II 945 X4 Quad Core 3.0Ghz| Memoria Kingston 6GB DDR3 1333