Ayuda con php y xhtml

aupa amigos,

Lo primero es que no se si esto va aqui o no pero weno,no sabia donde ponerlo asiske si esta mal lo siento. He estado buscando y no he encontrado nada al respecto, solamente el hilo de php pero creo que esto tampoco pinta nada alli. Weno me dejo de rollos jejeje

Me han pedido hacer un portal en php. El portal va a tener distintos tipos de usuarios. Mi primera idea era hacer una web con 3 frames,uno arriba para el titulo,otro a la izquierda para el menu y el otro para el contenido. Al entrar al portal en el frame del menu aparece un formulario de login que al introducirle los datos,segun el tipo de usuario que lo haga saca un menu u otro. Esto lo he conseguido,pero me da problemas al refrescar los frames de menu y demas. He estado buscando como un poseso,leyendo y leyendo todo el dia y he visto en muchisimos sitios que no es recomendable usar frames. El tema es que en algunos sitios recomiendan capas con el tag pero no explican como hacer que al pulsar un link del menu aparezca el resultado en otra capa. Y en ningun sitio he encontrado una alternativa viable. Alguno me sugiere algo¿?? No necesito una explicacion del copon (aunque tampoco estaria mal jejeje) pero si alguien me guiara un poco pos le estaria eternamente agradecido ya que en ningun foro especializado me contestan y ya no se como enfocarlo.

Saludos y muchisimas gracias!!!
Infórmate sobre la tecnología Ajax
Para estas cosas javascript es tu amigo :D

Salu2!
Lo primero gracias por contestar!! Javascript ya lo use hace un año mas o menos pero no me acuerdo de que sirva pa estos temas. Y lo de ajax no me queda muy claro lo que es exactamente. Podriais especificar un pelin mas?O darme alguna web de referencia que no sea wikipedia jejeje Es broma.Un saludo y gracias!!!
No necesitas AJAX, lo que tienes que hacer como bien dices es no usar frames. Lo que quieres hacer lo puedes hacer perfectamente con php, sin necesidad de meter javascript guarro.

Un saludo.
bastian puedes decirme como posiciono con php?Es que se usar require y include pero de hay a que las paginas aparezcan donde yo quiera....En el libro que tengo sobre php no he encontrado nada sobre esto.Puedes darme algun ejemplo?Gracias y saludos!!
¿Te refieres a posicionar los elementos en la página donde tú quieras? Con CSS. :)

Un saludo.
AJAX es una tecnología basada en JavaScript (en el objeto XMLHttpRequest concretamente) para comunicación asíncrona con el servidor usando XML.

Si quieres que cambie algo de forma asíncrona (sin recargar la página) vas a tener que usar JavaScript y concretamente DOM
http://mundogeek.net/wiki/doku.php?id=tutorial_de_javascript
Gracias a todos!!De momento voy a echarle un ojo a lo de posicionar con css que me viene mejor. Ya si eso luego mirare lo del ajax. Saludos y gracias de nuevo!!
Posiciona con los div's, maquetas con Css y programa con php.



Intenta diferenciar las partes del portal/proyecto.

Aspecto
---
Datos


Ah, y importante no te lies e intentes hacer todo a la vez. Cuando estes haciendo php dale al php, no te lies a meterte con css, ya maquetaras ...


Saludos :D
PilloWet gracias por el consejo!! La mayor parte del php lo tengo ya programado con html basico para probar, formularios simples y demas. Tengo que empezar con el diseño para luego ya acabar el tema. Saludos y gracias!!!

Edito: Puffff!!! He estado probando toda la mañana como maquetar el tema y jode, se me hace super dificil afinar la posicion de cada div en la pagina. Aparte,como puedo ocultar un div para que se muestre otro encima de el??? Saludosss
Este enlace me ayudó en la creacion de 'layout' Enlace

Sobre el tema de como abrir en enlace en el [div] yo hice una xapiculla fue acer un copy paste del html (index) y cambiar el [div] en cuestion (no se si me e explicado bien :-p ) . lo malo es eso que tiene que recarga la pagina entera :(

Si te enteras de algo avisa [oki]

Salu2!!
Primero como te han dicho para cambiar el contenido de lo que muestra un elemento de la página debes utilizar Javascript y manipular el DOM.

En la página que te enlazo encontrarás cientos de manuales. Los que yo te he enlazado son sobre javascript, también puedes buscar de Ajax si te pica la curiosidad. En particular te recomiendo los de las series "for dummies" y los "teach yourself":
http://www.flazx.com/search.php?p=Javascript&submit=Search
http://www.flazx.com/ebook4417.php <- Por ejemplo este, te enseña Ajax y el javascript que necesitas para modificar los contenidos de los elementos.

En cuanto al diseño, pues es css puro y duro. Te dejo también una serie de enlaces de referencia sobre ellos e igualmente puedes buscar en la página anterior algún manual:
http://www.w3.org/TR/CSS21/propidx.html
http://www.w3schools.com/css/default.asp
http://www.cssplay.co.uk/menu/index.html

kuribo escribió:como puedo ocultar un div para que se muestre otro encima de el???

No te entiendo ¿que un div sustituya a otro? A ver si puedes explicarte mejor o incluso hacer un cutre-dibujo.
Gracias a todos por responder. Con lo de que un div reemplaze a otro me refiero a que si en un div tengo un form para login,una vez que alguien haga el login este form debe desaparecer y en su lugar,digase en el mismo lugar tiene que aparecer un menu especifico segun el tipo de usuario que haya hecho login. Espero haberte aclarado lo que pretendo. Un saludo a todos!!
Puedes utilizar un condicional en php para eso. A ver si te puedo poner un ejemplo:

Recargando la página ->
SeleccionarCopiarfunction formulario_login() {
echo "   <div id='formulario_login'>\n";
  //Si no hay sesión iniciada
  if(!$_SESSION["nombre"]) {
     echo "    <form id='login' method='post' action='login.php' >\n";
      ...
     echo "    </form>\n";
  //Si se ha iniciado la sesión
  } else {
     echo "<span>Bienvenido ".$_SESSION['nombre']['nombre']."</span>\n";
  }
echo "   </div>\n";
}

Sin recargar la página -> lo de arriba haciendo uso de Ajax

HOSTIAS Churly cambia el css del resaltado del código php que no se ve nada
Aupa,

Si eso ya lo tengo desde hace tiempo, el tema es que en tu codigo si ya esta loggeado el echo sale en el mismo div. Yo quiero que ese mensaje salga en la pagina digamos central de la page, en el centro, apartado del menu. Por ejemplo si tengo un link en el div del menu,que ponga modificar datos, una vez clickado ese link deberia aparecer un formulario para la modificacion de datos en el centro de la web,en otra capa digamos.Esto es lo que quiero conseguir. Indagare un poco mas el tema y ya os comentare.Saludos y gracias!!!
Vale, en ese caso una de las formas de hacerlo es con javascript teniendo 2 divs:
el primero muestra el enlace
el segundo está en la misma posición que el primero y contiene el formulario para modificar los datos, pero utilizando el atributo visibility: hidden; lo ocultas hasta que pinches en el primer enlace, que ejecuta una función javascript que cambia el atributo visibility del segundo div a visible.
O simplemente mete el div dentro del if.
Ok!!! Creo que me servira!!!.Muchisimas gracias chicos!!!A ver si consigo algo en claro.Un saludo y lo dicho,gracias!!!!

Edito: Toy dandole ahora y gracias a esta web
http://www.subcide.com/tutorials/csslayout/index.aspx que puso Pery_soy lo estoy haciendo de maravilla ya que lo explica todo maskadito maskadito como yo necesitaba. Gracias a todos.Saludos!!!
18 respuestas