Foros del Web » Programando para Internet » PHP »

PhP y menú desplegable javascript

Estas en el tema de PhP y menú desplegable javascript en el foro de PHP en Foros del Web. Hola, soy nuevo en esto de php y estoy haciendo una página en la cual necesito cargar un menú javascript con datos de la base ...
  #1 (permalink)  
Antiguo 18/06/2005, 07:01
 
Fecha de Ingreso: junio-2005
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
PhP y menú desplegable javascript

Hola, soy nuevo en esto de php y estoy haciendo una página en la cual necesito cargar un menú javascript con datos de la base de datos... es esto posible??, de que forma?

Si necesitan más información sobre lo que quiero hacer para ayudarme pregúntenme :)

Gracias por adelantado
  #2 (permalink)  
Antiguo 18/06/2005, 07:33
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Cita:
Iniciado por Xermam
Si necesitan más información sobre lo que quiero hacer para ayudarme pregúntenme :)
Mejor dilo de una vez... ¿para qué perder tiempo?... lee el enlace de mi firma, son consejos sobre cómo preguntar en los foros...

Ahora bien, ¿se puede? sí! ... pero hay que entender bien qué es PHP y JavaScript; son cosas totalmente independientes.

Lo primero que haz de hacer es hacer funcionar un script JS (tu menú) una ves que hayas comprendido/sepas qué valores son los que han de modificarse... pués ve cómo imprimirlos con PHP... no hay mayor ciencia que eso...

No se te puede ayudar más pués no especificas más... adelantandome un poco.. . si los datos vienen de una Base de Datos busca en el foro sobre cómo hacer consultas...

Suerte y bienvenido!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #3 (permalink)  
Antiguo 18/06/2005, 07:59
 
Fecha de Ingreso: junio-2005
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Perdona, no te molestes, es que soy nuevo ...

Bueno te comento...

Es un menu horizontal (ya está hecho completamente). Imaginate
Inicio | Noticias | Grupo

En galardones si pasas el ratón por encima se despliega una pestaña que pone además de unas cuantas opciones, la opción Galardones. Si haces click en galardones se abre orta pestaña que muestra distintos años: 1985, 1986, cada uno de esos años es una opcion para hacer click, y están sacadas de la base de datos, de la tabla Anios. ¿Entiendes?, quiero que el usuario pueda hacer click en las distintas fechas donde el grupo ha conseguido ser galardonado para entrar a la página de ese año en concreto :P...

Y disculpas otra vez
  #4 (permalink)  
Antiguo 18/06/2005, 08:13
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Cita:
Iniciado por Xermam
Perdona, no te molestes, es que soy nuevo
Al contrario.. perdona tú .. yo no me molesté, lo que dije fue en buen son así soy, tenme paciencia

..... ... (no es en tono de molestia) perdón pero lo añades no aporta mucho para poder ayudarte.... ¿dónde está el código??.

El comportamiento y funcionalidad --y apariencia-- del menú como tal es meramente cuestión de JavaScript. Menionas ya lo tienes ¡¡¡PERFECTO!!! .. y ya tienes hubicado los datos que hay que modificar... pués bien... muestra esa parte... Da información de tu base de datos ¿estructura?, ¿nombres? ¿tablas? ¿campos?... ¿qué Base de Datos es --importantísimo --???.. Digo! para poder ayudarte con código...

Una consulta (extraer datos) en general sería:
Código PHP:
<?php
mysql_connect
("server""usuario""password"); //aquí modificarias lo que está entre comillas por tus datos
mysql_select_db("base_d_datos"); // el nombre de tu BD
$consultamysql_query("SELECT * FROM tabla"); // modificas "tabla" por el nombre de tu tabla
while($rowmysql_fetch_assoc($consulta)) {
      echo 
"<códifo JS=\"".$row['campo']."\" codigo JS"// aqui pondrías el código JS que ha de generarse dinámicamente y "campo" sería el nombre de tu campo de la tabla en la DB .. jejeje
}
?>
... algo muy general... si buscas encontrarás más info.

__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #5 (permalink)  
Antiguo 18/06/2005, 08:30
 
Fecha de Ingreso: junio-2005
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
jejeje bueno... eso que me has escrito es mas o menos lo que intenté yo, pero no me salió...

Te cuento más. Resulta que de javascript no tengo demasiada idea, de php más, porque me he pasado del asp al php y aunque no funcionan igual, más o menos, se tiene las ideas más claras. Pues resulta que me bajé un programa para hacer menús javascript (mu bueno, por cierto), se llama sothink y me generó eso, un archivo .js que ahora mismo te copio aquí:

Cita:

<------ este codigo es: Inicio | Noticias---------->

stm_bm(["menu36ce",430,"","blank.gif",0,"","",0,0,250,0,15 0,1,0,0,"","",0],this);
stm_bp("p0",[0,4,0,0,0,0,0,7,100,"progid:DXImageTransform.Micro soft.Wipe(GradientSize=1.0,wipeStyle=1,motion=reve rse,enabled=0,Duration=0.99)",4,"progid:DXImageTra nsform.Microsoft.Wheel(spokes=16,enabled=0,Duratio n=0.99)",-2,11,0,0,"#000000","transparent","",3,0,0,"#FFFFFF "]);
stm_ai("p0i0",[6,1,"#FFFFFF","",-1,-1,0]);
stm_ai("p0i1",[0," Inicio ","","",-1,-1,0,"index.php","_self","","","","",0,0,0,"","",0, 0,0,0,1,"",0,"",0,"","",3,3,0,0,"#FFFFFF","#FFFFFF ","#FFFFFF","#FFFFFF","bold 7pt Tahoma","bold 7pt Tahoma",0,1]);
stm_aix("p0i2","p0i0",[]);
stm_aix("p0i3","p0i1",[0," Noticias ","","",-1,-1,0,"noticias.php"]);
stm_aix("p0i4","p0i0",[]);

<--------Aquí viene lo que habría que cambiar------>

stm_aix("p0i7","p0i5",[0," Grupo"]);
stm_bpx("p2","p1",[1,4,0,0,0,0,0,7]);
stm_aix("p2i0","p1i1",[0,"Carnaval 2006"],100,15);
stm_aix("p2i1","p1i1",[0,"Historia"],100,15);
stm_aix("p2i2","p1i1",[0,"Fotos"],100,15);
stm_aix("p2i3","p1i0",[0,"Galardones","","",-1,-1,0,"","_self","","","","",0,0,0,"arrow_r.gif","ar row_r.gif",7,7],100,15);
stm_bpx("p3","p1",[1,2]);
stm_aix("p3i0","p1i1",[0,"AÑOS","","",-1,-1,0,"linkDelAnio.php"],100,15); //Esa es la frase que con php debería implementar para que salieran los años
stm_ep();
Decirte que yo hice mas o menos lo que tu, pero debí fallar...
A lo mejor lo que estoy haciendo mal es que estoy metiendo código php dentro de un archivo .js????. Te explico, hice la conexión dentro del archivo .js, también la consulta a la base de datos y justo al llegar aquí:

stm_aix("p3i0","p1i1",[0,"AÑOS","","",-1,-1,0,"linkDelAnio.php"],100,15);

Hice un while, poniendo en vez de AÑOS: <? row["campo"] =?>...

Espero que esto te haya servido más para ayudarme...

Muchas gracias por tu atención, jejeje y lo siento por ser cansino ;)
  #6 (permalink)  
Antiguo 18/06/2005, 08:47
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Cita:
Iniciado por Xermam
(..) hice la conexión dentro del archivo .js (...)
aaaalto desde ahí ... código PHP dentro de archivos .php ... y los que interprete tu servidor... pero sería rarísimo lo haga con otro tipo de archivos que no sea .php .. cuestión aparte.

Bueno, entonces, primer paso... tendrás que manejar el código del archivo .js directamente en la página .php... ...

No... puedo identificar bien lo que dices que habrá que cambiar ¿entendí es de repetir esta línea?
Código HTML:
stm_aix("p3i0","p1i1",[0,"AÑOS","","",-1,-1,0,"linkDelAnio.php"],100,15);
hay que cambiar solo o que está entre corchetes no?... ¿todo?...

Hagamos esto... muestra solo lo que hay que cambiar... un "antes" y un "despues" .. osease, que funcione con pocos y con muchos datos para identificar dónde esta la variante... el ciclo pués... aunque, presiento que si se te dan las herramientas sabrás hacerlo ... al final solo cambia la forma... la lógica será la misma sin importar el lenguaje.. así que quizá esto te ayude: www.php.net/basic-syntax

__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"

Última edición por jam1138; 18/06/2005 a las 08:55 Razón: agrego "rarisimo" :-p
  #7 (permalink)  
Antiguo 18/06/2005, 09:14
 
Fecha de Ingreso: junio-2005
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Exacto, lo que quiero cambiar es lo que hay entre corchetes, bueno y supongo que también: p3i0. Vamos, que si se pudiera hacer que funcionara lo siguiente en php sería lo que estoy buscando:

Cita:

...
<?php
include("conexion.php");
$link=Conectar();
$result=mysql_query("SELECT * FROM Anios", $link);
$i=0

while($row = mysql_fetch_array($resultado))
{
echo "(stm_aix(p3i". $i .",p1i1,[0,".$row["Anio"].",,,-1,-1,0,anio.php?id=". $row["id"].",100,15);)";
}

mysql_free_result($result);
mysql_close($link);
?>
...
el problema es que ahora no caigo como hacer eso fuera del .js y luego enviarlo al js... quiero decir... desde la página php, haría el recorrido de la base de datos pero luego como paso los datos al archivo js???...

teniendo en cuenta que desde el .php, la llamada al menú es esta:

<script type="text/javascript" language="JavaScript1.2" src="menu/Menu.js"></script>...

jejeje, me estoy avergonzando de mi mismo por resultar tan pesao :S
  #8 (permalink)  
Antiguo 19/06/2005, 01:14
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Cita:
Iniciado por Xermam
(...) Vamos, que si se pudiera hacer que funcionara lo siguiente en php sería lo que estoy buscando: (...)

(...) el problema es que ahora no caigo como hacer eso fuera del .js y luego enviarlo al js... quiero decir... desde la página php, haría el recorrido de la base de datos pero luego como paso los datos al archivo js???... (...)
Puedes manipular archivos... no es imposible, pero por la estructura que tiene tu archivo .js no vale la pena... es complicado, laborioso y gastas recursos... por ahí no iria la idea...

¿qué hacer?... un archivo .js no es más que código a incluirse... funcionará igual que si lo colocarás directamente en la página... así pués, yo te sugeriría --primeramente-- cambiarás la extención de tu archivo a .php, ahí mismo manejarás tu código PHP para armar lo que sería el equivalente a el .js original y en tus páginas donde lo vayas a ocupar insertarlo mediante un include() ... algo así:
Código PHP:
<script languaje="javascript">
<?php
include("menu.php");
?>
</script>
, el resultado final debería de ser el código JavaScript insertado directamente:
Código HTML:
<head>
<script languaje="javascript">
código menú
</script>
</head>
<body>... <etc> 
.... ahora, recuerda que solo JS es independiente... y no corresponde a PHP hablar de su funcionamiento, hay otro foro para ello... y quizá lo que diga a continuación sea una burrada , no lo sé (apenas se me ocurrió) pero.... no sé si sirva algo como esto:
Código PHP:
<script type="text/javascript" language="JavaScript1.2" src="menu/Menu.js">
<?php
// aquí lo que hagas con PHP
?>
</script>
... núnca lo he intentado y mucho menos lo he visto ... pero ¿por qué no??... creo solo sería cuestión de que el código del archivo se complementara con lo que está entre etiquetas... de hecho si son funciones independientes podrías separar solo la que te incumbe del resto del archivo... no sé!, son cuestiones aparte y esto último solo lo digo en teoría (menos que eso ... solo me baso en mi imaginación), lo primero sí debe ser funcional... así que, formas hay muchas.. pero el manejar código en archivos que no corresponden no es una opción...

Espero de algo te sirva... y nos avises de avanzes, soluciones, errores ú cualquier resultado... Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #9 (permalink)  
Antiguo 19/06/2005, 04:30
 
Fecha de Ingreso: junio-2005
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Bueno, muchas gracias por tu ayuda, decirte que no he conseguido meter todo un código de php dentro de un codigo de javascript, aunque si es posible pasar variables.

He hecho lo siguiente para probar:

<?php
$variable=5;
?>

<script>
var variableJS= <?$variable?>
document.write(variableJS);
</script>

lo que pasa es que no me iguala bien, no sé la razón, cuando lo averigue te avisaré, y si logro hacer que el menu funcione, también te mantendré informado.

Muchísimas gracias por tu ayuda, de verdad... viva la gente con paciencia como tu :D
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 17:31.