Foros del Web » Programando para Internet » PHP »

Imprimir variable de session en select html

Estas en el tema de Imprimir variable de session en select html en el foro de PHP en Foros del Web. Hola amigos estaba viendo que en los formularios de la red cuando cometes algun error te vuelve a mostrar el mismo formulario con tus datos ...
  #1 (permalink)  
Antiguo 03/04/2010, 12:03
 
Fecha de Ingreso: septiembre-2009
Mensajes: 281
Antigüedad: 14 años, 7 meses
Puntos: 0
Imprimir variable de session en select html

Hola amigos estaba viendo que en los formularios de la red cuando cometes algun error te vuelve a mostrar el mismo formulario con tus datos previamente llenados para no volver a llenarlos mi problema pasa por ahi intento hacer eso ??

Mi formulario muy simple primero:
Código HTML:
Ver original
  1. <center>
  2. <?php session_start(); ?>
  3. <form name="form1" action="index.php?mod=jugadores&pag=guardar" id="form1" method="post" onSubmit="return validar_jugador(this)" class="cmxform">
  4.            <table border="0" align="center" class="tabla" width="550" height="550">
  5.             <tr><td colspan="2"  class="titulo">REGISTRO NACIONAL DE JUGADORES </td>
  6.             </tr>
  7.        
  8.             <tr>
  9.                 <td id="carlos" style="text-align:left">Nombres:</td>
  10.                 <td id="ajax"><input type="text" name="nombre" size="30"  id="nombre" maxlength="256"  onKeyPress="return validar_text(event)" value="<?php echo $_SESSION['nombre']; ?>" class="required" minlength="3" />
  11.                              
  12.                
  13.                
  14.                
  15.                </td>
  16.                 </tr>

Código PHP:
case 'guardar':
        include(
'vistas/conectar.php');
        
        if(!empty(
$_SESSION['usuario_id'])||($_SESSION['usuario_nivel']==3)||($_SESSION['usuario_nivel']==2)){
            
            
$nombre $_SESSION['nombre'] = trim($_POST['nombre']);
            
$link Conectarse();
            
$sqlQueryCat mysql_query("SELECT * FROM jugadores where ci='$ci'"$link)or die(mysql_error);
            
$rowCat mysql_fetch_array($sqlQueryCat);
                                                                     

                    
$msg '';
                        
                    if (empty(
$nombre)) {
                        
$msg .= '  <center> No se especifico un Nombre  </center><br>';
                        echo 
"<center><meta http-equiv=\"refresh\" content=\"3;URL=index.php?mod=jugadores&pag=insertar\">\n </center>";
                        } 
                                                    
                  if(empty(
$msg)) {
                    
                                if (empty(
$id)) {
                
                                    
                                if (
$ci != $rowCat['ci']){
                                
//if (($rowCat['registro_fbf']) < 1) && ($rowCat['ci'] < 1)){
                                   
                                
if ($MOD['jugadores']->setJugador($nombre)){
                        echo 
"<center> <img src=modulos/imagenes/cargando.gif alt=cargando/></center>";
                        echo 
"<center>Registro exitoso!. Espere unos instantes</center>";
                        
                                                                                                    unset(
$_SESSION['nombre']);
                                        

                        echo 
"<meta http-equiv=\"refresh\" content=\"3;URL=index.php?mod=jugadores&pag=listado\">\n";
                                } else {
                                    echo 
"El registro no fue exitoso";
                                }
                                }
                                
                                else{
                                  echo 
"<center><strong> El Carnet de identidad  ya existe !!! lo sentimos vuelva a intentar de nuevo </strong></center>";
                                  echo 
"<meta http-equiv=\"refresh\" content=\"3;URL=index.php?mod=jugadores&pag=insertar\">\n";
                                }
                
                                
                  } else {
                                if (
$MOD['jugadores']->setJugador($nombre,$id)){
                        echo 
"<center> <img src=modulos/imagenes/cargando.gif alt=cargando/></center>";
                        echo 
"<center>Actualización exitosa!. Espere unos instantes</center>";
                        
                                        
                                        unset(
$_SESSION['nombre']);
                                                            
                        echo 
"<meta http-equiv=\"refresh\" content=\"3;URL=index.php?mod=jugadores&pag=listado\">\n";
                                } else {
                                    echo 
"<center>La actualización no fue exitosa</center>";
                                }
                    }
                } else {
                          echo 
"<center>Los siguientes campos son erroneos: </center><br><br>" $msg;
          } 
         
    } else {
    echo 
" <center> Usted no tiene permisos </center>";
    }
    break; 

Mi idea es cuando meta algun dato repetido por decir DNI le vota el mensale y le vuelve a redireccionar a el formulario de insertar pero el nombre esta borrado cuando deberia aparecer para que no vuelva a escribir nuevamente ???
Donde cometo mi error ??

Se los agradezco de antemano gracias
  #2 (permalink)  
Antiguo 03/04/2010, 12:28
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: Mantener sesiones al llenar formulario ?

Sinceramente, no lei tu codigo... Pero la manera mas facil de solucionar este problema, es validar el formulario con javascript, asi hasta que no este 100% valido, no se envia.

Un saludo.
__________________
HV Studio
Diseño y desarrollo web
  #3 (permalink)  
Antiguo 03/04/2010, 13:38
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Respuesta: Mantener sesiones al llenar formulario ?

OJo quita ese<center> y todo el HTML que tengas detras de <?php session_start(); ?> simplemente esta mal. y te generara errores.
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #4 (permalink)  
Antiguo 03/04/2010, 17:12
 
Fecha de Ingreso: septiembre-2009
Mensajes: 281
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Mantener sesiones al llenar formulario ?

TENGO UNA PREGUNTA PARA PODER IMPRIMIR UNA VARIABLE DE SESSION DENTRO DE UN SELECT HTML COMO SE DEBE HACER HICE DE DOS TIPOS PERO LA VERDAD NO SE CUAL ES LA CORRECTA
1:
Código PHP:
 <select name="categoria" id="categoria" title="Selecciona Categoria!" validate="required:true">
               <option value="<?php echo $_SESSION['cat'];?>"> </option>
                    <option value="S7"> Sub 7</option>
                     <option value="S9"> Sub 9 </option>
                     <option value="S11"> Sub 11</option>
                     <option value="S13"> Sub 13</option>
                     <option value="S15"> Sub 15</option>
                     <option value="S17"> Sub 17</option>
                     <option value="S19"> Sub 19</option>
                     <option value="PA"> Primera "A"</option>
            <option value="PB"> Primera "B"</option>
            <option value="PS"> Primera Asc</option>
            <option value="SA"> Segunda Asc</option>
            <option value="MU"> Mutual</option>
                
                   </select></td>
            </tr>
En esta primera consulta hago el echo dentro del value de la primera opcion de select pero en la vista html no me muestra el valor de esa variable q tengo osea no se imprime pero se q esta almacena ahi:

2:
Código PHP:
Ver original
  1. <td id="ajax">
  2.                      <select name="categoria" id="categoria" title="Selecciona Categoria!" validate="required:true">
  3.                     <option value=""><?php if (isset($_SESSION['cat'])){ echo $_SESSION['cat']; } ?> </option>
  4.                     <option value="S7"> Sub 7</option>
  5.                     <option value="S9"> Sub 9 </option>
  6.                     <option value="S11"> Sub 11</option>
  7.                     <option value="S13"> Sub 13</option>
  8.                     <option value="S15"> Sub 15</option>
  9.                     <option value="S17"> Sub 17</option>
  10.                     <option value="S19"> Sub 19</option>
  11.                     <option value="PA"> Primera "A"</option>
  12.                     <option value="PB"> Primera "B"</option>
  13.                     <option value="PS"> Primera Asc</option>
  14.                     <option value="SA"> Segunda Asc</option>
  15.                     <option value="MU"> Mutual</option>
  16.                
  17.                 </select></td>

En esta otra no imprimo dentro del value de la primera opcion sino afuera en este caso si me muestra el valor de esa variable almacenada pero cuando pongo guardar como en su value de la primera opcion esta vacion me dice que llene este campo.

Y LA TERCERA OPCION MEZCLA DE LOS DOS:
Código PHP:
Ver original
  1. <td id="ajax">
  2.                      <select name="categoria" id="categoria" title="Selecciona Categoria!" validate="required:true">
  3.                     <option value="<?php echo $_SESSION['cat'];?>"><?php if (isset($_SESSION['cat'])){ echo $_SESSION['cat']; } ?> </option>
  4.                     <option value="S7"> Sub 7</option>
  5.                     <option value="S9"> Sub 9 </option>
  6.                     <option value="S11"> Sub 11</option>
  7.                     <option value="S13"> Sub 13</option>
  8.                     <option value="S15"> Sub 15</option>
  9.                     <option value="S17"> Sub 17</option>
  10.                     <option value="S19"> Sub 19</option>
  11.                     <option value="PA"> Primera "A"</option>
  12.                     <option value="PB"> Primera "B"</option>
  13.                     <option value="PS"> Primera Asc</option>
  14.                     <option value="SA"> Segunda Asc</option>
  15.                     <option value="MU"> Mutual</option>
  16.                
  17.                 </select></td>
Aqui muestro y almaceno en su value vacio pero no me convence muy bien lo que realizo aqui esta bien ???

Gracias amigos este foro es muy bueno
  #5 (permalink)  
Antiguo 04/04/2010, 09:37
 
Fecha de Ingreso: septiembre-2009
Mensajes: 281
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Mantener sesiones al llenar formulario ?

La mejor opcion para que puede imprimir una variable de sesion en php en la tercerra para un select html o no ?

Etiquetas: html, select, session, variables
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 19:15.