cs_eli42
Messages postés143Date d'inscriptionmardi 24 décembre 2002StatutMembreDernière intervention11 juillet 2023
-
10 mars 2010 à 12:51
TychoBrahe
Messages postés1309Date d'inscriptionsamedi 31 janvier 2009StatutMembreDernière intervention 5 juin 2013
-
14 mars 2010 à 12:27
Bonjour a tous (tes)
voila j'ai un peu chercher sur delphi fr et google mais je n'ai pas vu de solution à ma question
j'expose mon probleme
ma page index comporte un cadre divise en trois nonme Gauche, Milieu, Droite, puis charge entete.php, Gauche.php, Droite.php et bas.php
<?php include("Bas.php"); ?>
//--------------------------------------------------------------
voila jusqu'à la pas de probleme
Mon soucie
Sur le bandeau de l'entete.php et droite.php j'ai des images, et la je voudrais faire un include dans class="Milieu" c'est à dire la cellule du milieu de la page index.php, mais quand je met :
ca m'affiche pas Visu1.php dans "Milieu" ca ouvre la page normalement.
soit je suis aveugle : possible
soit j'ai rien compris au include : certainement
soit po possible : les boules
gibozsec
Messages postés318Date d'inscriptionmardi 27 mai 2003StatutMembreDernière intervention11 mars 2010 10 mars 2010 à 19:44
Bonjour,
Je ne suis pas certain de bien comprendre. Si je ne me trompe pas, tu voudrais que le lien ouvre visu.php dans la partie centrale uniquement en gardant les partie droite, gauche et bas ?
Si c'est bien le cas tu ne t'y prends pas bien. Ton utilisation des includes n'est pas en cause, simplement tu fais un lien vers une page appelée "visu.php", c'est donc normal que ton navigateur ouvre cette page.
Si tu souhaite rendre la partie centrale dynamique, ce que tu peux faire c'est passer un paramètre à ta page index.php. En fonction de ce paramètre, tu charge la le fichier qui convient. Par exemple :
Attention cependant, sois prudent sur le fonctionnement que tu vas mettre en place. Par exemple ne te contente pas d'ajouter .php à la valeur du paramètre, sinon n'importe qui pourrait faire charger des fichiers à ton application sans que tu en ais vraiment envie.
Si j'ai mal compris ce que tu veux n'hésites pas à préciser.
shadow1779
Messages postés706Date d'inscriptionmercredi 17 novembre 2004StatutMembreDernière intervention29 septembre 2013 10 mars 2010 à 19:50
pour avoir Visu1.php dans ta colonne de tableau il suffit de faire comme suit:
<td class="Milieu"><?php include("Visu1.php"); ?></td> (href ne s'applique pas a un tableau
après pour l'utilisation que t'en veux je sais pas si ca te conviendra, si le but est de faire de l'inclusion dynamique: a savoir une (ou plusieurs comme ici) page de template, et le contenu qui vient se greffer dedans j'te conseil plus une approche comme tel:
Considéront une page inc-haut et une page inc-bas (qui représente ton template), inc-haut contient le début du code jusqu'a <td valign="top" class="Milieu"> et inc-bas le restant du code
ensuite pour chaque page php (index.php / articles.php / contact.php / toto.php a toi de voir ^^) tu peux faire un truc du style
<?php include("inc-haut.php"); ?
Ceci est un paragraphe présent dans ma cellule de tableau milieu prenant en charge un gabarit de site
<?php include("inc-bas.php"); ?>
ce qui te laisse la possibilité d'avoir des url du type http://monsite.com/index.php // monsite.com/contact.php etc...
shadow1779
Messages postés706Date d'inscriptionmercredi 17 novembre 2004StatutMembreDernière intervention29 septembre 2013 12 mars 2010 à 12:59
Niveau sécurité, ce qui peut poser problème c'est le deface du site, c'est a dire qu'une personne mal intentionnée utilise les paramètres passés en GET pour y insérer du code malicieux.
Pour éviter cela dans un include fais un truc du style
if(isset($_GET['page']) and !empty($_GET['page'])){
include("http://monsite.com/".addslashes($_GET['page']).".php");
}
l'extension sera alors obligé d'être la bonne et le fichier sera bien un fichier php de ton site. après tu peux toujours faire un test avec is_file() mais bon dans l'absolu un utilisateur n'est pas censé bidouiller l'adresse pour voir une page, il se réfère au lien de la page ^^
cs_eli42
Messages postés143Date d'inscriptionmardi 24 décembre 2002StatutMembreDernière intervention11 juillet 2023 10 mars 2010 à 21:42
Re,
Merci a gibozsec et shadow1779, pour vos réponses rapide
Pour ce qui est de la réponse de shadow1779, oui c'est valable la solution :
//-----
<?php include("inc-haut.php"); ?
Ceci est un paragraphe présent dans ma cellule de tableau milieu prenant en charge un gabarit de site
<?php include("inc-bas.php"); ?>
//-----
Mais ca m'oblige a mettre les bandeau Gauche et Droite sur toutes les pages que je voudrais faire afficher au milieu, je dois avoir une trentaine de pages au final, et je voulais gagner de la vitesses et de la mise a jour au minimum, donc c'est la solutions que j'opterai si je ne trouve pas d'autres solutions.
Pour ce qui est de gibozsec, je dois etudier cette technique : http://www.tonsite.com/index.php?page=visu je pense que c'est la solution qui est adapte a la forme de mon site, par contre ca va etre chaud^, ouai PHP ce n'est pas delphi 7, mais bon je vais my mettre a fond dedans.
Sinon il y a pas plus simple (quand je dit plus simple je me comprends pour un type qui a demarrer depuis 48h) style mettre un iFrame sur le tableau du milieu et via les liens juste changer le contenu de iFrame par visu.php
Bonne continuation
Beau Temps Belle Mer
* Merci d'avance pour reponse future (gibozsec et shadow1779)
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_eli42
Messages postés143Date d'inscriptionmardi 24 décembre 2002StatutMembreDernière intervention11 juillet 2023 12 mars 2010 à 06:20
Bonjour a tous (tes)
n'ayant pas avancé un poil sur la technique : http://www.tonsite.com/index.php?page=visu j'ai creer toutes mes pages comme l'index c'est a dire je recharge l'entete, le bandeau gauche, le bandeau droit et le bas,
je recharge tout car apparament du peu que j'ai lu faire un include ou un once quif quif vitesse, c'est discutable je pense.
c'est con de tout recharger mais bon si je m'entete sur afficher le contenu dans mon cadre du milieu je vais pas bien avance.
une petit dernier conseil si je peux : les pages faut il ou pas vérifier la présence physiquement, question sécurité?
TychoBrahe
Messages postés1309Date d'inscriptionsamedi 31 janvier 2009StatutMembreDernière intervention 5 juin 201312 14 mars 2010 à 12:27
Salut,
@shadow1779 :
Tu te trompes lourdement, faire un include (ou fonction de la même famille) qui se base sur une donnée utilisateur est une grave faille qui peut être exploitée malgré beaucoup de tentatives de sécurisation. Par exemple pour ta maigre tentative de sécurisation, il est possible de simplement passer comme paramètre "img/toto.png?titi=". La page inclue sera donc "http://monsite.com/img/toto.png?titi=.php", autrement dit l'image toto.png. Ce serait très bête que le site permette d'uploader des images, car des images (valides) qui contiennent du code php ça prend quelques secondes a créer, et pan exécution d'un script perso sur le site. Mettant à part ce cas, il existe bien d'autres méthodes pour passer outre une protection comme la tienne, dans tous les cas les includes de ce genre sont a bannir.
Et les utilisateurs qui bidouillent l'url pour chercher des failles, ça peut être une personne qui t'en veux personnellement, un type qui veux s'ammuser et a trouvé ton site avec une recherche google sur "page=" (génial pour trouver des cibles potentielles pour la faille d'include), etc.