| ||||||||
Petit astucien | Bonjour (ou Re !) J'ai enfin compris l'utilisation de la fonction include(). j'ai réussi à créer mon fichier à inclure en .inc.php Mais après avoir inclus la ligne <?php include('texteainclure.inc.php'); ?> entre <head> et </head>, l'include fonctione très bien mais je ne parviens plus à modifier le reste de ma page ! J'ai une fenêtre qu ime dit qu c'est bloqué. et ça me gonfle depuis 3 heures !!! | |||||||
Publicité | ||||||||
| ||||||||
Astucien | bonjour Pour pouvoir t'aider au mieux, il serait intéressant de voir un plus ton code essai de coller un bonne partie de code utilisé | |||||||
Petit astucien | Merci Qmike. voici le type de fichier que je souhaite inscrire dans chaque page : (j'ai appelé cette page 'test3.inc.php')
Voici comment je l'ai inséré :
Dans Dreamweaver MX, je peux modifier les lignes de code en mode Code (Tout apparâit alors correctement lorsque je fais un aperçu dans IE. Mais je ne peux rien modifier en mode création ! Etmoi, vu mon niveau, je ne crée mes pages qu'en mode Création ! Une fenêtre s'affiche à chaque fois que je veux ajouter quelques chose avec le message :
HELP !! | |||||||
![]() ![]() |
Ton include ne doit pas contenir ces balises si elle sont déjà dans le code de la page où tu mets l'include... | |||||||
![]() ![]() |
Et ça, c'est quoi? </html> La structure d'une page est : <html> <body> </body>
Une seule tête, un seul corps! Modifié par elle le 28/12/2009 18:22 | |||||||
Petit astucien | Merci ELle (encore ! ) J'ai supprimé les HEAD et les BODY dans le fichier .inc.php :
Mais je ne parviens toujours pas à écrire mes pages. Et j'ai aussi supprimé les balises en trop Elle. Au secours, je vais craquer | |||||||
Petit astucien | J'oubliais : Lorsque je coupe l'écran en deux (CODE/CREATION) les lignes de code que je tape en haut dan sla partie Code n'apparaissent pas en bas dans la partie Création ! Mais quand je place les fichiers sur le serveur, tout apparaît correctement (sauf que je rédige mes pages à l'aveuglette et que j'en suis incapable!)
P.S : Si je veux écrire avant la ligne de code include lorsqu'elle est dans le corps de la page, il n'y a pas de souci. Tout se fait normalement. Mais dès que je mets le code include dans l'en-tête ou en début de corps, ça merde !
Je suis au bord de la crise de nerfs là... Modifié par philbouq le 28/12/2009 18:42 | |||||||
![]() ![]() | Tu as laissé les balises html et tu te trouves aussi à inclure une partie du code de ton menu (celui entre <p> et </table>) dans le head alors qu'elle doit se trouver dans le body, non? | |||||||
Petit astucien | YES !!! Merci Elle. Les balises html devaient en effet bloquer tout ça ! Mais tu vas rire, maintenant, ce sont les menus déroulants qui ne fonctionnent plus dans mon .inc.php !! Je suis MAUDIT !!!!! | |||||||
![]() ![]() | elle a écrit : Et ça, tu as corrigé? | |||||||
Petit astucien | Je ne comprends pas ce que tu veux dire ! Et je commenc esérieusement à en avoir plein le dos là. je n'arrive à rien. tantôt ça marche, tantôt ça marche pas. Je craque. J'ai modifié les liens dans mes menus déroulants vers les pages en .php mais lorsque je vais sur la page d'accueil (http://chiensdetraineau.free.fr, qui contient un nclude avec le tableau et les menus juste en dessous) le lien Chroniques/histoire renvoie vers lma page en htm et pas vers celle en php. les menus déroulants sont "vides" dans la page http://chiensdetraineau.free.fr/chroniques.php alors que j'y ai mis l emême include que dans la page index. Suis vraiment dépité là. Une journée pour RIEN.
EDIT : une autre ! EDIT : dans ma page code, les <? et > qui encadrent l'include apparaissent en rouge. Modifié par philbouq le 28/12/2009 21:29 | |||||||
![]() ![]() | philbouq a écrit :
mm_menu_1225190929_0.addMenuItem("Histoire","location='chroniques.htm'"); | |||||||
Petit astucien | Le crétin ! j'ai enregistré mes fichiers mais je crois que j'ai oublié de les placer sur le serveur ! Merci en tous cas d'ête encore là !! | |||||||
Petit astucien | Ben non ! là, c'est bein en .php mais ça conduit toujours à la page en .htm !!
| |||||||
![]() ![]() | Dans le code de ton menu, je vois encore tous les liens en htm. | |||||||
Petit astucien | c'est parce que c'est la page index.htm qui s'affiche. lorsque je modifie l'extension vers .php, la page ne ressemble plus à l'original. Les tableaux sont défaits et tout est à la suite. C'est pas du tout ma page ça ! essaie maitenant : http://chiensdetraineau.free.fr
Pire : sous IE, l apage est totalement démantibulée Modifié par philbouq le 28/12/2009 22:41 | |||||||
![]() ![]() | philbouq a écrit : Si le fait de modifier l'extension de ta page en modifie l'apparence, c'est parce que la page index.php interprète le code php. Le problème viendrait donc de ton code php. Essaie de simplement modifier l'extension de ta page index sans rien changer au code, donc sans mettre d'include, pour voir.
Édité : tu regardes ta page en local ou en ligne, quand elle est avec l'extension php? Modifié par elle le 28/12/2009 22:49 | |||||||
Petit astucien | Si j'enlève la ligne de code de l'include, tout va bien. | |||||||
![]() ![]() | hello dans edition/préférences de DW, tu as dans un des sous items une possibilité de réglage des composants serveurs ... Et une case à cocher "afficher les fichiers inclus". Décoche-la, tu verras que ton include ("graphiquement") se limitera à un petit carré jaune. ça sera plus simple.
l'include est une véritable inclusion, c.à.d. que le serveur Apache/PHP va prendre la page 2, lire son code source, et l'injecter dans la page 1. Donc bien entendu, la page 2 n'a pas forcément besoin de contenir un <html>, <head>, etc.
Petite précision sur le nom : tu peux nommer comme tu veux les fichiers à inclure. Que ça soit include('toto.html'), ou include('toto.inc'), ou encore include('toto.html.inc.txt.jpg.php') peu importe : l'opértio faite par le serveur sera toujours la même. Tu trouveras beaucoup de sites qui conseillent de nommer ces fichiers inclus avec l'extension ".inc", je trouve personnellement que c'est une très mauvaise idée, parce que si (par malheur) quelqu'un arrive à deviner le dossier où sont situés ces fichiers, par exemple dans /inc/, alors le simple appel dans le navigateur affichera leur code source ... en clair, si tu as inc/titi.inc, et que je fais http://tonsite/inc/titi.inc, comme mon navigateur ne sait pas ce que c'est (c'est pas un .htm ni .html) il l'affichera comme un simple texte. Si tes fichiers ne contiennent que de l'HTML, c'est pas grave du tout. S'ils contiennent du PHP, c'est dommage de livrer tes secrets ...
Dernière petite précision : il existe en réalité 4 fonctions pour faire cela. Ce sont : include('...'); include_once('...'); require('...'); require_once('...');
la différence entre include et require, c'est que si jamais le fichier n'est pas trouvé (parce que l'arborescence est fausse par exemple), avec include tu auras un gros "Warning" sur la page. Avec require, tu auras le même warning, mais sur une page blanche : en effet, require stoppe net l'exécution de la page en cas d'erreur. Pour ma part, je préfère donc le require à l'include. et pour ce qui est du "_once", ça veut dire n'inclure qu'une fois. Que se passe-t-il, si jamais dans page1 tu inclues page2, laquelle inclue page3, et qu'en bas de la page1 (donc bien après l'inclusion de page2) tu inclues manuellement page3 ? Page3 se rtrouve incluse 2 fois, et si tu as défini une fonction dedans, par exemple, ça plantera (car une fonction ne peut pas être définie 2 fois). Le _once (include_once ou require_once) n'appellera la page3 qu'une seule fois, car il se rendra compte que la 2ème fois, tu inclueras une page qui a déjà été incluse. | |||||||
Petit astucien | Merci Malcolm. Bien pris pour les extensions du fihier à inclure. Au nivaeu des secrets, mes pages ne contiennent que du texte et des photos donc, pas de souci particulier avec ça ! En attendant, ça ne marche toujours pas ! C'est reparti pour une journée de tirage de cheveux... | |||||||
Petit astucien | J'ai supprimé mon fichier à inclure et l'ai totalement retapé. Je l'ai inséré dans ma page index. MAIS : les sous menus ne fonctionnent pas ! J'ai encore merdé quelque part ? | |||||||
Petit astucien | Bon, ben ondirait que ça marche presque... Juste un petit souci de menu déroulant | |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | ||||||||||||||||||
|