2014-10-19 105 views
2

我設計這樣我的PHP產品頁面模板:PHP模板添加動態js和css

指數:

<!DOCTYPE html> 
<html> 
<head> 
<link href="/user/admin/templates/css/bootstrap.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/jquery-1.10.1.min.js"></script> 
</head> 
<body> 

<?PHP include ('dynamicpage.php'); //load dynamic page request example: adduser.php ?> 

</body> 
</html> 

我需要添加.js.css文件中的每個dynamicpage.php這樣的:

adduser.php:

<link href="/user/admin/templates/css/formvalidation.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/formvalidation.min.js"></script> 

<?PHP // code + html ?> 

addpage.php :

<link href="/user/admin/templates/css/select2.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/select2.min.js"></script> 

<?PHP // code + html ?> 

現在,我需要從動態頁面到頁面頂部daynamic .js.css打印到<head></head>這樣的:

如果我加載addpage.php我的頭模板:

<link href="/user/admin/templates/css/bootstrap.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/jquery-1.10.1.min.js"></script> 
<link href="/user/admin/templates/css/select2.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/select2.min.js"></script> 

如果我加載adduser.php我的頭模板是:

<link href="/user/admin/templates/css/bootstrap.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/jquery-1.10.1.min.js"></script> 
<link href="/user/admin/templates/css/formvalidation.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/formvalidation.min.js"></script> 

如何使用任何PHP函數或類打印.js.css ?!對不起,我的新用戶PHP並沒有任何想法。

回答

0

這是不可能的,你可以將它設置爲dynamicpage.php作爲變量,並在主體中使用該變量。如果您爲其他CSS和JS文件設置了其他變量,那麼也可以使用這些變量。

dynamicpage.php的內容可能是這樣的:

$css = "dynamicpage.css"; 
$js = "dynamicpage,js"; 
$content = "<div>blabla</div>"; 

您的索引文件可能是這個樣子:

<?PHP include ('dynamicpage.php'); ?> 
<!DOCTYPE html> 
<html> 
<head> 
<link href="/user/admin/templates/css/bootstrap.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/jquery-1.10.1.min.js"></script> 
<link href="/user/admin/templates/css/<?php echo $css; ?>" rel="stylesheet"> 
<script src="/user/admin/templates/js/<?php echo $js; ?>"></script> 
</head> 
<body> 

<?php echo $content; ?> 

</body> 
</html> 
+0

強烈推薦'require_once()',而不是'包括()' – HddnTHA 2014-10-19 20:03:18

0

只是測試下面的代碼,你會得到你的結果:

index.php

<?php 
    if (isset($_GET['a']) || (!isset($_GET['a']) && !isset($_GET['b']))) { 
    include ('link1.php'); 
    } elseif (isset($_GET['b'])) { 
    include ('link2.php'); 
    } 
?> 
<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8" /> 
    <title>Title</title> 
    <?=$links?> 
</head> 
<body> 
    <a href="?a">Link 1</a> 
    <a href="?b">Link 2</a> 
    <?php page(); ?> 
</body> 
</html> 

link1.php

<?php 
    $links = 
    '<link rel="stylesheet" href="css/bootstrap.min.css" /> 
    <link rel="stylesheet" href="css/style.css" />'; 

    function page() { 
?> 
    <div>Some HTML code here...</div> 
<?php } ?> 

link2.php

<?php 
    $links = 
    '<link rel="stylesheet" href="css/select2.css" /> 
    <link rel="stylesheet" href="css/myStyle.css" />'; 

    function page() { 
?> 
    <div>Some other HTML code here...</div> 
<?php } ?> 

保存在不同的文件,並使用相同的名稱,因爲我提供的每一個上面的代碼,並在本地或遠程服務器進行測試。

0

像我之前在另一個線索暗示鏈接多個文件把包括在您的索引文件的頭,然後你可以添加文件包括通過更新arrays.make這個函數在一個包含文件,調整路徑,以滿足

$stylesheets = array('style.css','prettyPhoto.css','nivo-slider.css'); 
$scripts = array('core.js','core.js', 
         'jquery-1.4.1.min.js', 
         'jquery-slidedeck.pack.lite.js', 
         'jquery-prettyPhoto.js', 
         'jquery.nivo.slider.js'); 
foreach($stylesheets as $styles){ 
    echo "<link rel='stylesheet' type='text/css' href='$styles' />"; 
} 

foreach($scripts as $script){ 
    echo "<script src='$script'></script>"; 
} 
-1
// Dynamic Administration on a Public Hostname (ex: www.example.com) 
// Use NO-IP or DYNDNS.ORG for Dynamic Hostname 

$conn_ip = $_SERVER['REMOTE_ADDR']; // Your Internet Connection 
$host_ip = gethostbyname('your.dynamichost.com'); // Points to your Internet Connection Dynamically 

if($conn_ip == $host_ip && $username == "Admin"){ 

    // Do Admin Stuff 

}