Se connecter avec
S'enregistrer | Connectez-vous

Aide css/html

Dernière réponse : dans Programmation

Bonjour à vous, j'ai un probleme assez genant. j'ai créé une page en utilisant du css et du html, constituée d'un menu fixé sur la gauche, d'un en-tete, d'un pied de page, et d'une partie principale dans tout l'espace restant.
Mon probleme vient du fait que je voudrais que les liens de mon menu ouvrent leur page dans la partie principale. Je sais que la solution existe en frames, mais je prefererais garder ma base en css...

enfin bon. j'aurais aimé savoir si vous connaissez un moyen en html/css (ou dans un autre language si il le faut) pour que je puisse faire ceci.

merci d'avance

Autres pages sur : aide css html

Lassé par la pub ? Créez un compte

bon, j'ai créé un truc maintenant en php, mais j'ai un léger bug...

je vous copie mon code php:
  1. <?php
  2. $pages=array(
  3. 'index'=>'<a href="http://ftp-site-test-base.site.voila.fr/index" target="_blank">http://ftp-site-test-base.site.voila.fr/index</a>',
  4. 'vide'=>'<a href="http://ftp-site-test-base.site.voila.fr/vide" target="_blank">http://ftp-site-test-base.site.voila.fr/vide</a>',
  5. 'center1'=>'<a href="http://ftp-site-test-base.site.voila.fr/center1" target="_blank">http://ftp-site-test-base.site.voila.fr/center1</a>',
  6. );
  7. if(isset($_GET['page']) && array_key_exists($_GET['page'],$pages))
  8. include $pages[$_GET['page']].'.html';
  9. else
  10. include 'index.html';
  11. ?>



et voila le resultat sur ma page...

http://ftp-site-test-base.site.voila.fr/index.php?page=...


autan dire que ca marche, mais à moitié :)  vous avez pas une idée pour m'aider? J'ai mis mon php dans ma balise qui correspond au bloc en bleu hein :)  (je suis pas nul à ce point :D )

Merci d'inclure ton code entre balises [CODE] et non
Citation :

(bouton CPP dans l'editeur)

et sinon ta methode est ultra dangereuse !!! N'importe qui pourrais inclure n'importe quoi sur ton site !

edit: en fait non ça va ça cherchera forcement à inclure un fichier local ... :ange: 

bah, j'ai changé le truc avec le include (index.php), et ca a rien changé... alors bon... vous avez pas d'autres correction en tete parceque je vois pas pourquoi ca bug, pourquoi mon code php s'affiche comme si c'etait du texte????

J'ai peur que tu te compliques un peu. Tu veux faire koi exactement? Si c'est faire en sorte que seul le div change quand tu cliques sur un lien, tu cherches trop loin. Tu fais un include avec chacune des parties importantes et non changeantes de ton site (ex: pub, menu, titre...). à chaque lien cliqué, la page est changé, mais ca se voit pas car tous est standardisé, seul change le div intéressé. Comprends tu ? et du coup tu fais juste un include et pas tout ton code:
catstive a dit :

  1. <?php
  2. $pages=array(
  3. 'index'=>'<a href="http://ftp-site-test-base.site.voila.fr/index" target="_blank">http://ftp-site-test-base.site.voila.fr/index</a>',
  4. 'vide'=>'<a href="http://ftp-site-test-base.site.voila.fr/vide" target="_blank">http://ftp-site-test-base.site.voila.fr/vide</a>',
  5. 'center1'=>'<a href="http://ftp-site-test-base.site.voila.fr/center1" target="_blank">http://ftp-site-test-base.site.voila.fr/center1</a>',
  6. );
  7. if(isset($_GET['page']) && array_key_exists($_GET['page'],$pages))
  8. include $pages[$_GET['page']].'.html';
  9. else
  10. include 'index.html';
  11. ?>


ouai je sais, mais en fait j'ai découvert qu'il y a deux methodes, celle ou tu mets ton include sur chacune de tes pages (que tu me proposes), qui est d'ailleurs plus sécurisée que celle que j'ai prise, et la deuxieme, ou tu recharges meme pas la page, ca charge juste le div dans lequel tu ouvres l'adresse. Et juste pour le principe je prefere celle la :)  parceque j'ai pas besoin de l'avoir sur chaque page...

Putain, j'ai trouvé plus faignante que moi !!! Je croyais cela impossible, mais si, mai si, ça existe !!
Comme tu le sens, c'est une solution come une autre (un peu complexe). Mais si arrives à la faire marcher, reviens nous le dire, ca m'intéresse...

faignant :)  lol

Bah... je vais voir si j'y arrive, si jamais vous avez une idée pour m'aider dites le moi, ca pourra toujours m'aider :) 

mon probleme c'est que ce code je l'ai trouvé sur un site et que je l'ai modifié en partie, et que je comprends pas le fonctionnement de array... c'est quoi à gauche dans la colonne? c'est quoi à droite?

Par l'URL --> index.php?page=bidule :??:  (c'est ultra simple à faire ça)

Dans ton index.php tu fait un switch sur les mots clef potentiels histoire d'eviter les tentatives d'include malveillantes.

Et tu include juste les fichiers dans les cases en prevoyant bien un default qui correspond à une page n'existant pas et/ou si on n'a rien indiqué.

ouhlalalalalalala... bon juste comme ca tu peux me résumer?
je met un include dans mon div que je veux faire changer, et je mets JUSTE le include?

et apres dans mes liens pour ouvrir la page en gros je mets: adresse_du_site/index.php?page=page1

c'est ca? ou il faut que je mette plus de trucs dans le div à changer???

Bon je te mets juste le morceau qui correspond à ce que tu dois faire:

  1. <?PHP
  2. // A ajouté en tout début de page
  3. // Repporte toutes les erreurs PHP (pour PHP 3, utilisez l'entier 63)
  4. error_reporting(E_ALL);
  5. ?>
  6.  
  7. --- DEBUT DE LA PAGE ---
  8.  
  9. <div>
  10. <?PHP
  11.  
  12. $page = '';
  13.  
  14. // On va d'abord récupérer ce qu'on doit include.
  15. if (array_key_exists('page',$_GET)) {
  16. $page = $_GET['page'];
  17. }
  18.  
  19.  
  20. // Et on va selectionner le bon include a partir de $page :)
  21. switch ($page) {
  22. case 'page1': include 'page1.php';
  23. break;
  24.  
  25. case 'page2': include 'page2.php';
  26. break;
  27.  
  28. default: include 'default.php';
  29. }
  30. ?>
  31. </div>
  32.  
  33. --- FIN DE LA PAGE ---


(je précises ceci a été ecris en live = non testé, néanmoins ça doit marcher :D )

en principe oui :)  perso je l'aurais fait avec if, comme je maitrise pas encore à fond :)  (bah oui ca fait à peine 24h que je m'y suis mis :)  je me débrouille bien pour un débutant hein? :D )


et donc comme lien je mets quoi? je mets

  1. <a href="adresse_du_site/default.php?page1" >

ou il faut que je rajoute quelque chose?

Citation :
le coup du tableau est mieux je trouve :o 


y'a pas de "default" à un tableau ...

catstive a dit :
en principe oui :)  perso je l'aurais fait avec if, comme je maitrise pas encore à fond :)  (bah oui ca fait à peine 24h que je m'y suis mis :)  je me débrouille bien pour un débutant hein? :D )


et donc comme lien je mets quoi? je mets

  1. <a href="adresse_du_site/default.php?page1" >

ou il faut que je rajoute quelque chose?


Bin oui ça irait comme ça ...

super :)  merci beaucoup alors :D  je fais ca dès demain, la il est un peu tard :D  et je vous dit si ca a marché :D  (au fait, vous savez si mon site fonctionne avec IE7? il marche avec firefox, mais pas avec IE6, je sais pas pour le 7...)


et d'ailleurs, le code

  1. # <?PHP
  2. # // A ajouté en tout début de page
  3. # // Repporte toutes les erreurs PHP (pour PHP 3, utilisez l'entier 63)
  4. # error_reporting(E_ALL);
  5. # ?>


il les met oû les rapports d'erreur???

bon bah... ca marche pas :(  j'ai plus le bug ou mon code php est affiché pas le div, mais quand je clique sur un lien ca change rien... la page reste toujours aussi blanche qu'au début...

vous avez pas une idée d'oû peut venir le probleme?

Ligne 42? ya pas de ligne 42... et sinon j'ai maitenant complettement compris le code, mais comment est-ce que page fait pour savoir quel valeur prendre? elle est affichée dans l'adresse, mais comment on va la chercher cette valeur dans l'adresse? Et autre question, est ce que le fait d'avoir
  1. $page=' '

au début de la page ne remet pas automatiquement la valeur de page à 0, et donc la valeur qu'elle a été chercher dans l'adresse ne change plus rien puisque $page est TOUJOURS à 0?

catstive a dit :
super :)  merci beaucoup alors :D  je fais ca dès demain, la il est un peu tard :D  et je vous dit si ca a marché :D  (au fait, vous savez si mon site fonctionne avec IE7? il marche avec firefox, mais pas avec IE6, je sais pas pour le 7...)


et d'ailleurs, le code

  1. # <?PHP
  2. # // A ajouté en tout début de page
  3. # // Repporte toutes les erreurs PHP (pour PHP 3, utilisez l'entier 63)
  4. # error_reporting(E_ALL);
  5. # ?>


il les met oû les rapports d'erreur???


Il les affiche :o 

catstive a dit :
Ligne 42? ya pas de ligne 42... et sinon j'ai maitenant complettement compris le code, mais comment est-ce que page fait pour savoir quel valeur prendre? elle est affichée dans l'adresse, mais comment on va la chercher cette valeur dans l'adresse? Et autre question, est ce que le fait d'avoir
  1. $page=''

au début de la page ne remet pas automatiquement la valeur de page à 0, et donc la valeur qu'elle a été chercher dans l'adresse ne change plus rien puisque $page est TOUJOURS à 0?


Bah non puisqu'on la lis juste apres justement (le bloc IF)... C'est une initialisation de la variable c'est tout.
(et y'a pas d'espace entre les guillemets)

oui mais justement, c'est quoi qui lis la variable? puisque $GET cherche la variable dans le swich et que $page il va pas aller chercher sa valeur tout seul dans l'adresse...




et juste une petite question comme ca... ce code je le mets UNIQUEMENT sur la page de départ non?

catstive a dit :
oui mais justement, c'est quoi qui lis la variable? puisque $GET cherche la variable dans le swich et que $page il va pas aller chercher sa valeur tout seul dans l'adresse...


non ce qui lis donne sa valeur à la variable c'est dans le bloc IF. Le Switch ne se sert que de la valeur de $page pas du tout du $_GET !

catstive a dit :
et juste une petite question comme ca... ce code je le mets UNIQUEMENT sur la page de départ non?


Bah non sur l'unique page que tu as au final c'est le but de la manoeuvre

ah super, mais alors, pourquoi ca marche pas? j'ai mis le code en place, et quand je cliques sur les liens ca ouvre pas mes pages... mais alors quelle est l'utilité de GET? et comment fait page pour prendre une autrer valeur que 0?

et juste comme ca, comment est ce que array_key_exists peut trouver la valeur "page" dans GET si on dit que page=GET apres???

aaaah ok :D  donc GET prend la valeur de ce qui suit le = dans l'adresse!
Bah alors pourquoi ce code fonctionne pas? Je dois mettre les adresses comment dans le swich?

exemple de ce que j'ai pour le moment:
  1. switch ($page) {
  2. case 'vide': include '<a href="http://site.voila.fr/ftp-site-test-base/vide.html" target="_blank">http://site.voila.fr/ftp-site-test-base/vide.html</a>';
  3. break;
  4.  
  5. case 'center1': include '<a href="http://site.voila.fr/ftp-site-test-base/center1.html" target="_blank">http://site.voila.fr/ftp-site-test-base/center1.html</a>';
  6. break;

il faut mettre le .html à la fin du nom ou pas? parceque j'ai testé la, et ca fonctionne pas... :( 

edit: j'ai essayé sans le .html à la fin ca marche pas non plus...

en fait le probleme vient peut etre de là:
l'adresse de mon site: http://ftp-site-test-base.site.voila.fr/index.php
l'adresse du dossier oû sont toutes les pages: http://site.voila.fr/ftp-site-test-base/
ya un moyen de mettre un url entière dans un include ou bien il faut que je change de serveur? :s

bah en principe je pense oui, sinon il afficherait mon code PHP comme il le faisait au départ avec mon code qui marchait pas, mais c'est pas un SITE voila.fr, c'est un FTP, du coup c'est moi qui fait toute la présentation seul, j'utilise pas leurs modèles de sites.

je vais voir pour la balise php, mais c'est si important que ca? :??: 

ouai, comme je le pensais, ca a rien changé... je vais vérifier que voila.fr supporte le php, mais je pense que oui...

et m***e! voila.fr supporte pas le php à cause de l'insécurité... rhaaa... vous connaissez pas un hébergeur gratuit qui supporte le php?
Lassé par la pub ? Créez un compte