Foros del Web » Creando para Internet » Diseño web »

HELP! refresh desde un selct option

Estas en el tema de HELP! refresh desde un selct option en el foro de Diseño web en Foros del Web. buenas tardes a todos, soy nuevo en esto del html y php. se me presento un problema que no puerdo resolver. tengo que refrescar una ...
  #1 (permalink)  
Antiguo 04/11/2008, 14:02
 
Fecha de Ingreso: noviembre-2008
Mensajes: 14
Antigüedad: 16 años
Puntos: 0
HELP! refresh desde un selct option

buenas tardes a todos, soy nuevo en esto del html y php.
se me presento un problema que no puerdo resolver.
tengo que refrescar una pagina desde un select option, suena facil pero ya no se que mas inventar, alguna idea??? llegue a esto pero parece que mande fruta


por un lado en el html :
creo una funcion refrescr en php que use cuando cambio el select option..
<?
session_start(); //comienzo la session
//obtengo todo desde la SESSION
if(isset($_SESSION['usuario'], $_SESSION['contrasenia'], $_SESSION['motor']))
{
$usuario = $_SESSION["usuario"];
$contrasenia = $_SESSION["contrasenia"];
$motor = $_SESSION["motor"];
$existecone=$_SESSION["existecone"];
$refresh = $_SESSION["refresh"];
echo"$refresh 1";
}
else{
header("Location: default.html");//redirecciono a default.php para volver a loguearme
}
?>


<?
function refrescar($seg)
{
$_SESSION["refresh"] = $seg;
?>
<meta http-equiv="refresh" content= "<?$seg?>; url= procesos.php">
<?}?>


<div id="maincont">
<div id="main">
<h1>
&nbsp;-&nbsp;Procesos. </h1>
<table width="100%" border="0">
<tr bgcolor="#F4F4F4">
<td width="100">Refresco: </td>
<td width="870"><select name="time" size="1" onchange="refrescar(this)">
<?include("switch.php");?>

</select></td>
</tr>
</table>
<br/>



y por otro lado mi php:
recupero por session algunos datos entre ellos el que fue seleccionado en mi select option y cargo el select option con un switch.

<?
session_start(); //comienzo la session
//obtengo todo desde la SESSION
if(isset($_SESSION['usuario'], $_SESSION['contrasenia'], $_SESSION['motor']))
{
$usuario = $_SESSION["usuario"];
$contrasenia = $_SESSION["contrasenia"];
$motor = $_SESSION["motor"];
$existecone=$_SESSION["existecone"];
$refresh = $_SESSION["refresh"];
}
else{
header("Location: default.html");//redirecciono a default.php para volver a loguearme
}
?>


<?switch ($refresh)
{
case 5:
if($refresh == 5){?>
<option selected="selected" value =5>5</option>
<?}else{?>
<option value =5>5</option>
<?}
//break;
case 15:
if($refresh == 15){?>
<option selected="selected" value =15>15</option>
<?}else{?>
<option value =15>15</option>
<?}
//break;
case 30:
if($refresh == 30){?>
<option selected="selected" value =30>30</option>
<?}else{?>
<option value =30>30</option>
<?}
//break;
case 45:
if($refresh == 45){?>
<option selected="selected" value =45>45</option>
<?}else{?>
<option value =45>45</option>
<?}
//break;
case 60:
if($refresh == 60){?>
<option selected="selected" value =60>60</option>
<?}else{?>
<option value =60>60</option>
<?}
case 75:
if($refresh == 75){?>
<option selected="selected" value =75>75</option>
<?}else{?>
<option value =75>75</option>
<?}
//break;
case 90:
if($refresh == 90){?>
<option selected="selected" value =90>90</option>
<?}else{?>
<option value =90>90</option>
<?}
default:
echo"el case fallo";
}?>



croe que deberia andar pero no me guarda el que seleccione antes!!!
  #2 (permalink)  
Antiguo 04/11/2008, 20:56
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 19 años, 2 meses
Puntos: 49
Respuesta: HELP! refresh desde un selct option

creo que lo mejor seria ajax :/
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #3 (permalink)  
Antiguo 04/11/2008, 21:05
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: HELP! refresh desde un selct option

Bienvenido, anghell.

Estás confundiendo los conceptos, estás tratando de ejecutar código PHP dentro de una función Javascript, lo cual no tiene sentido ya que están en ámbitos diferentes, PHP en el servidor y Javascript en el cliente. Lo puedes hacer con Javascript usando location.reload().
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #4 (permalink)  
Antiguo 05/11/2008, 15:00
 
Fecha de Ingreso: noviembre-2008
Mensajes: 14
Antigüedad: 16 años
Puntos: 0
Respuesta: HELP! refresh desde un selct option

Muchas gracias por sus respuestas.
pero sigo sin poder resolverlo, llegue hasta aca y no se como seguir

<html>
<head>
<script type="text/javascript">
function refrescar()
{
var x=document.getElementById("time");
t=x.options[x.selectedIndex].value;
//setTimeout("window.location='refresh.html'",t*1000 );
setTimeout("window.location='refresh.html'",t*1000 );
//alert(t)
}
</script>
</head>
<body>
Selecciona un tiempo:
<select name="time" id="time" onchange="refrescar()">
<option value =2>2</option>
<option value =4>4</option>
<option value =6>6</option>
<option value =8>8</option>
</select>
<!--aver... como hago para que este javascript recargue-->
<!--<a href="javascript:location.reload()">Actualizar</a>-->
<!--<a href="refrescar()">Actualizar</a>-->
</body>
</html>

el tema es que necesito seguir refrscando el tiempo de acuerdo con el item seleccionado. ademas cuando en el onchange refresco, me inicializa en el primero, no puedo guardar el item seleccionado.
no la tengo clara con javascript, we... creo que no tengo nada claro. pero necesito resolveer esto, estoy estudiando javascript pero no encuentro la solucion.
ayuda plz!!
  #5 (permalink)  
Antiguo 05/11/2008, 16:45
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Pregunta Respuesta: HELP! refresh desde un selct option

Lo siento, pero aunque leí varias veces tu mensaje no logro entender exactamente lo que quieres hacer. ¿Quieres que se los segundos se vayan acumulando o algo así?.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #6 (permalink)  
Antiguo 06/11/2008, 12:47
 
Fecha de Ingreso: noviembre-2008
Mensajes: 14
Antigüedad: 16 años
Puntos: 0
Exclamación Respuesta: HELP! refresh desde un selct option

tenes razon , el problema es que cuando entro en la pagina tengo un select option, si selecciono un tiempo, la pagina deberia refrescarse todo el tiempo de acuerdo al item seleccionado y ademas guardar lo que tenia en la pagina para que cuando refresque muestre lo ultimo que configure. configurar me refiero a el item que selecione en el menu desplegable o si tengo un checkbox o un radiobutom o lo que sea me lo vuelva a mostrar tal como lo tilde o lo seleccione anteriormente.
simpre que refresco me muestra lo inicial y no lo ultimo.
pense en variables de session pero tengo problemas con eso en javascript ya que es un lenguaje en el cliente y no en el servidor o eso lei.
ya llegue a una solucion que me parece fea tirando a horrible, pero anda.
el tema es que esto deberia ser mas facil de hacer pero como dije antes no la tengo clara ni con javascript ni php, me sugirieron ajax pero apenas estoy entendiendo esto de javascript que prefiero buscar una solucion en php-javascript
te muestro a lo que llegue:
ejemplo.php
<?
session_start(); //comienzo la session
//obtengo todo desde la SESSION
$refresh= 2;
session_register('refresh');
$_SESSION["refresh"] = $refresh;
header("Location: mipagina.php");
?>
/*================================================= ===*/
mipagina.php
<?
session_start();
$refresh = $_SESSION["refresh"];
?>

<html>
<head>
<script type="text/javascript">
function refrescar3()
{
var x=document.getElementById("time");
t=x.options[x.selectedIndex].value;
//setTimeout("window.location='procesos.php'",t*1000 );
location.href = "setsession2.php?valor="+t;
//setTimeout("location.reload()",t*1000);
//alert(t)
}
function getItem3()
{
var x=document.getElementById("time");
t=x.options[x.selectedIndex].value;
//setTimeout("window.location='procesos.php'",t*1000 );
return t;
//alert(t)
}
</script>
</head>

<body>
Selecciona un tiempo:
<select name="time" id="time" onchange="refrescar3()">
<?include("armarselect2.php");?>
</select>
<?include("armarrefresh2.php");?>
<!--aver... como hago para que este javascript recargue-->
<!--<a href="javascript:location.reload()">Actualizar</a>-->
<!--<a href="refrescar()">Actualizar</a>-->
</body>
</html>
/*================================================= =====*/
setsession2.php
<?
session_start(); //comienzo la session
//obtengo todo desde la SESSION

$refresh= $_GET["valor"];
session_register('refresh');
$_SESSION["refresh"] = $refresh;

header("Location: mipagina.php");
?>
/*================================================= ====*/
armarselect2
<?
session_start(); //comienzo la session
$refresh = $_SESSION["refresh"];
?>

<?if($refresh == 2){//de acuerdo al item seleccionado en el menu desplegable en la pagina anterior selecciono el nuevo item?>
<option selected="selected" value =2>2</option>
<?}else{?>
<option value =2>2</option>
<?}
if($refresh == 4){?>
<option selected="selected" value =4>4</option>
<?}else{?>
<option value =4>4</option>
<?}
if($refresh == 6){?>
<option selected="selected" value =6>6</option>
<?}else{?>
<option value =6>6</option>
<?}
if($refresh == 8){?>
<option selected="selected" value =8>8</option>
<?}else{?>
<option value =8>8</option>
<?}?>
/*================================================= =====*/
armarrefresh2
<?
//session_start();
$refresh = $_SESSION["refresh"];
?>
<?
switch ($refresh)
{
case 2:
if($refresh == 2){?>
<meta http-equiv="refresh" content= "2; url= mipagina.php">
<?}
break;
case 4:
if($refresh == 4){?>
<meta http-equiv="refresh" content= "4; url= mipagina.php">
<?}
break;
case 6:
if($refresh == 6){?>
<meta http-equiv="refresh" content= "6; url= mipagina.php">
<?}
break;
case 8:
if($refresh == 8){?>
<meta http-equiv="refresh" content= "8; url= mipagina.php">
<?}
break;
default:
echo"el case fallo";
}?>

/*================================================= ===*/
fijate que a esto le deberia pasar una funcion o algo asi para que me parametrize el refres o no?
<meta http-equiv="refresh" content= "8; url= mipagina.php">
pero ni idea como hacerlo :S

decime si me entendiste, apenas y puedo yo.
Gracias....
  #7 (permalink)  
Antiguo 06/11/2008, 12:57
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: HELP! refresh desde un selct option

Creo que gran parte del código se podría resumir prescindiendo de Javascript y usando un formulario y un botón submit, envías por GET a la misma página los parámetros e imprimir directamente el selected="selected" al option que fue seleccionado previamente, pero eso provocaría que se recargara cada cierto tiempo, no una única vez, en fin, habrá que hacer algunos arreglos, pero mi idea es esa.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
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 05:47.