Normal düzende oluşturduğumuz klasör yapısı sitelerimizde şu şekilde oluşturulduğunda header.php’nin dahil edildiği dosyalarda eklenen css dosyaları sorunsuz çalışmaktadır.

Eğitim Videosu

Yazılı Anlatım

Klasör yapısı

  • proje
    • css
      • style.css
    • header.php
    • index.php

Birde şu yapıya göz atalım.

  • proje
    • css
      • style.css
    • sub
      • sub.php
    • header.php
    • index.php

bu klasör yapımızda sub alt klasörü içerisinde sub.php mevcut. header.php bu klasöre require_once ‘../header.php’; olarak dahil edildiğinde css dosyalarımızın işlevlerini kaybettiği görülmektedir. Bu sorunun temel amacı kök klasörde style dosyalarının yolları doğru olarak içe aktarılırken alt klasörden bir üste çıktığımızda bu yolların tam olarak gösterile memesidir.

Mevcut Proje Kod Yapımız

Öncelikle sorun yaşadığımız şekilde projemizi oluşturalım. Klasör yapımız aşağıda ki gibi olacak şekilde yapılandıralım.

  • proje
    • css
      • style.css
    • sub
      • sub.php
    • header.php
    • index.php

style.css

b {
	font-size: 65px;
}

header.php

<!DOCTYPE html>
<html>
<head>
	<title>CSS yol belirleme</title>
	<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>

</body>
</html>

index.php

<?php require_once 'header.php'; ?>
<b>emrahyuksel.com.tr</b>

sub.php

<?php require_once '../header.php'; ?>
<b>emrahyuksel.com.tr</b>

Bu şekilde projemizi oluşturduktan sonra index.php ve sub.php dosyalarını gözlemleyelim.

index.php

iki önizlemeye göz attığımızda index.php dosyasında style.css dosyası işlevlerini yerine getirirken sub.php dosyasında header.php ekli olmasına rağmen stlye.css dosyası işlev görmüyor.

css dosyalarının yollarını kök klasör baz alınarak yapılandırma

Bu sorunun temel sebebi alt klasörlerde ../header.php eklenirken css style dosyalarının yol karmaşası yaşamasıdır.

sub.php

sub.php dosyasında header.php’yi dahil ettiğimiz kısımda $_SERVER[‘DOCUMENT_ROOT’] global değişkeni kullanılarak tam klasör yolu baz alınarak uygulayın.

<?php require_once $_SERVER['DOCUMENT_ROOT'].'/header.php'; ?>
<b>emrahyuksel.com.tr</b>

header.php

header.php’de şu düzenlemeyi yapın.

//Önce
<link rel="stylesheet" type="text/css" href="css/style.css">
//Sonra
<link rel="stylesheet" type="text/css" href="/css/style.css">

klasör yol yapımız mevcut bir domain baz alınarak uygulandığında bu sonucu verecektir. eğer localhost üzerinde çalışıyorsanız DOCUMENT_ROOT sonucunu önizleyerek klasör yollarına göre işlem yapmanız gerekecektir. Bahsettiğimiz işlemler alan adı altında gerçekleştirildiğinde doğru sonuç verecek şekilde gösterilmiştir.

Dikkat!

Ücretsiz Kursunuz Burada

C# Kurs: Yeni Başlayanlara Özel Projelerle Sıfırdan Öğrenin

10 ücretsiz kayıt hakkı

Kayıt Linki : https://www.udemy.com/csharp-kursu/?couponCode=F5XQYHSA

Kaçırdınız mı? 🙁  Ücretsiz Kursları nasıl elde edebileceğiniz hakkında daha detaylı bilgi için tıklayın

(Visited 72 times, 1 visits today)