Foros del Web » Programando para Internet » Javascript »

Problemas con refrescar php

Estas en el tema de Problemas con refrescar php en el foro de Javascript en Foros del Web. Hola buenos días, He mirado de hacer un javascript con php para que pueda mostrar/ocultar menu, categorías pero veo que al refrescar la página pierdo ...
  #1 (permalink)  
Antiguo 17/01/2011, 01:44
Avatar de syntex  
Fecha de Ingreso: noviembre-2002
Ubicación: Cataluña
Mensajes: 978
Antigüedad: 21 años, 5 meses
Puntos: 4
Problemas con refrescar php

Hola buenos días,

He mirado de hacer un javascript con php para que pueda mostrar/ocultar menu, categorías pero veo que al refrescar la página pierdo todo los valores del javascript y me se oculta todo.

Como puedo hacer que se muestre en php, refrescando la página?

Código PHP:
<?
    $conexion 
mysql_connect("localhost","xxxxxxx","xxxxxxxxxxx");
mysql_select_db(xxxxxxxxxx,$conexion);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>Prueba</title>
<?
    
# Carga desde php
    
if ($_GET[id])
    {
        
    }
?>
<script languaje="Javascript" type="text/javascript">
    document.write('<style type="text/css">div.ocultable{display: none;}</style>');
        function MostrarOcultar(capa,enlace)
        {
            if (document.getElementById)
            {
            var aux = document.getElementById(capa).style;
            aux.display = aux.display? "":"block";
            }
        }
</script>
</head>
<body>
<table width="20%" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr>
        <td height="30" align="center" valign="middle" bgcolor="#CCCCCC">
            <a href="javascript:MostrarOcultar('idMenu');">
                <strong>MENU</strong>
            </a>
          </td>
    </tr>
    <tr>
        <td>
            <div class="ocultable" id="idMenu">
            <?php
                $registros
=mysql_query("select * from servicios_cat ORDER BY ordenado ASC",$conexion);
                while(
$reg=mysql_fetch_array($registros))
                {
                    
?>
                    <table width="100%" border="0" cellspacing="1" cellpadding="2">
                        <tr>
                            <td bgcolor="#f1f1f1"><!-- ROSA gris -->
                                <a href="javascript:MostrarOcultar('id<?= $reg['texto_1'];?>');">
                                    <strong>• <?php echo $reg['texto_1']; ?></strong>
                                </a>
                            </td>
                        </tr>
                    </table>
                    <div class="ocultable" id="id<?= $reg['texto_1'];?>">
                        <table width="100%" border="0" cellspacing="1" cellpadding="1" bgcolor="#f9f9f9"><!-- ROSA -->
                            <?php
                            $COD
=$_REQUEST['cod_sub_cat'];
                            
//$CATEGORIA=$_REQUEST['categoria'];
                            
$registros2=mysql_query("select * from servicios_sub where id_compras_cat='".$reg[id]."'",$conexion);
                            while(
$reg2=mysql_fetch_array($registros2))
                            {
                                
?>
                                <tr>
                                    <td>
                                        <table width="100%" border="0" cellspacing="1" cellpadding="1">
                                            <tr>
                                                <td><!-- AZUL claro -->
                                                    <a href="?id=<?= $reg2['id']; ?>">
                                                        <?php echo $reg2['textosub_1']; ?>
                                                    </a>
                                                </td>
                                            </tr>
                                        </table>
                                    </td>
                                </tr>
                                <?php
                            
}
                            
?>
                        </table>
                    </div>
                    <?php
                
}
            
?>
            </div>
        </td>
    </tr>
</table>
</body>
</html>
__________________
------------------------------------------------
La paciencia es el rey de la ciencia
------------------------------------------------


Última edición por cvander; 17/01/2011 a las 11:42
  #2 (permalink)  
Antiguo 17/01/2011, 02:03
Avatar de sigher  
Fecha de Ingreso: enero-2011
Mensajes: 46
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Problemas con refrescar php

He probado el codigo y me da error en la linea 11
Código PHP:
Ver original
  1. if ($_GET[id])
sustituyelo por
Código PHP:
Ver original
  1. if ($_GET['id'])
Sobre dejar desplegado el menu, he encontrado lo siguiente en el foro, espero que sirva de ayuda
[URL="http://www.forosdelweb.com/f13/como-dejar-desplegado-menu-705196/"]http://www.forosdelweb.com/f13/como-dejar-desplegado-menu-705196/[/URL]
  #3 (permalink)  
Antiguo 17/01/2011, 03:25
Avatar de syntex  
Fecha de Ingreso: noviembre-2002
Ubicación: Cataluña
Mensajes: 978
Antigüedad: 21 años, 5 meses
Puntos: 4
Respuesta: Problemas con refrescar php

Hola esto puede ser problemas de error las ''?

El script veo que funciona correctamente se muestra o oculta correctamente,
Pero me gustaria que si muestro se guardase en una variable de $_SESSION por ejemplo y al refrescar la página pudiera tener el mismo contenido y no cerrado todo.

Veo que al refrescar se pierde el Js,

Podria hacer algo como llamar la function dependiendo de la condicion?

Código PHP:
<?
    
# Carga desde php
    
if ($_GET['id'])
    {
        
?>
            <script languaje="javascript" type="text/javascript">
                MostrarOcultar('idMenu');
            </script>
        <?
    
}
?>
Gracias.
__________________
------------------------------------------------
La paciencia es el rey de la ciencia
------------------------------------------------


Última edición por syntex; 17/01/2011 a las 04:30
  #4 (permalink)  
Antiguo 17/01/2011, 12:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Tema movido desde PHP a Javascript
  #5 (permalink)  
Antiguo 18/01/2011, 23:52
Avatar de syntex  
Fecha de Ingreso: noviembre-2002
Ubicación: Cataluña
Mensajes: 978
Antigüedad: 21 años, 5 meses
Puntos: 4
Respuesta: Problemas con refrescar php

Lo he solucionado así:

Código PHP:
<?
    
# Carga desde php
    
if ($_GET['cat'])
    {
        
$body "onload=\"javascript:MostrarOcultar('Menu');javascript:MostrarOcultar('id".$_GET['cat']."');\"";
    }
?>
Y en el body
Código HTML:
<body <?= $body; ?>>
Es correcto poner dos javascript en el body???

Gracias.
__________________
------------------------------------------------
La paciencia es el rey de la ciencia
------------------------------------------------


Etiquetas: php, refrescar
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 16:49.