CSS laden met smarty template engine

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Niels Engelen

Niels Engelen

24/10/2011 21:33:34
Quote Anchor link
Hoe moet je een extern css file laden met smarty? Ik heb een footer, header,index.En een externe css file.

dit is mijn index.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
//Roep het bestand aan waarin de Smarty classes staan
require('../Smarty/Smarty.class.php');
//include  "../templates/header.tpl";

$header = new Smarty();
$header->display('templates/header.htm');

//Maak een nieuw object aan genaamd "Smarty"
$smarty = new Smarty();
//$smarty->debugging = true;

$smarty->display('index.html');

$footer = new Smarty;
$footer->display('templates/footer.htm');

$smarty->template_dir = "templates"; //Hierin staan de templatebestanden waarvan je gebruik maakt in je project
$smarty->compile_dir = "templates_c"; //Hierin komen de gecompileerde templatebestanden te staan
$smarty->cache_dir = "cache"; //Het is mogelijk om templates te cachen zodat ze niet telkens opnieuw gecompileerd hoeven worden. In dat geval is dit de map waar de gecachede bestanden in komen te staan.
$smarty->config_dir = "configs"; //Deze map wordt gebruikt voor het opslaan van configuratie-bestanden.
$smarty->assign('name','niels');
//$smarty->assign('./templates/header.htm');



//footer.php

//include('templates/footer.htm');


?>


Toevoeging op 24/10/2011 21:34:57:

en dit mijn index.html

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<h1>Inloggen</h1>
<p>Hier kunt u inloggen, als u een gebruikersnaam en een wachtwoord heeft.</p>
<table align="left">
    <tr>    
    <td></td>
        <td>Gebruikersnaam:</td>
        <td><input type="text" name="username" align="left" maxlength="55"></td>
    </tr>
    <tr>
    <td></td>
        <td>Wachtwoord:</td>
        <td><input type="password" name="passwoord"></td>
    </tr>
    <tr>
        <td colspan="2" align="left"><input type="submit" value="Inloggen" name="submit"></td>
        <td colspan="2" align="left"><input type="submit" value="wachtwoord vergeten" name="submit"></td>
    </tr>    
</table>

<html>
<body>

</body>
</html>


Toevoeging op 24/10/2011 21:37:33:

Ik heb het op deze manier geprobeerd:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title></title>
<link href= "style.css" rel="stylesheet" type="text/css" />


</head>
<body>
<div id="container">
    <div id="header">
      <h1>Antiek Brocante</h1>
      <p></p>
          
          <!--
          <form name="form1" id="form1" method="get" action="index.php">
          <input type="text" name="terms" value="Search..." />
          <input type="hidden" name="p" value="search" />
          <input class=" button" type="submit" name="Submit" value="GO" />
      </form>
      -->
    </div>
    
    <div id="navigation">
        <ul id="navlist">
            <li><a href="index.php">Home</a></li>
            <li><a href="meubels.php">Kristal</a></li>
            <li><a href="kristal.php">wachtwoord veranderen</a></li>
            <li><a href="admin.php">Nieuwe admin</a></li>
            <li><a href="zoek.php">Zoeken</a></li>
            <li><a href="zilver.php">Nieuwe applicatie</a></li>
            <!--
            <li><a href="inloggen.php">Inloggen</a></li>
            -->
            
            
<li><p><strong>Hier kunt u gegevens neerzetten.</strong><br/> </p></li>
        </ul>

  

        </div>
      <div id="sidebar">
      
        <h2></h2>
        <p>  </p></div>
      
          <div id="content">
          
          
    <!-- End of header. -->


Toevoeging op 24/10/2011 21:40:04:

En dit is mijn footer:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<!-- # Script 2.3 - footer.html -->
  </div>      
    <div id="footer">
    <p><a href="" target="_blank">
  </a> | <a href="" target="_blank">
  </a> | Copyright &copy; Antiek Brocante | Design by <a href="">Microrout</a></p>
  </div>
</div>
</body>
</html>
 
PHP hulp

PHP hulp

28/12/2024 13:23:56
 
- Ariën  -
Beheerder

- Ariën -

24/10/2011 21:50:43
Quote Anchor link
Lijn 6 in je template aanpassen naar:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<link href="style.css" rel="stylesheet" type="text/css" />

Er stond een spatie verkeerd...

En nog wat anders...
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$header = new Smarty();

Waarom doe je dit twee keer, later ook voor de footer?
Deze gebruik class hoef je maar 1 keer te laden, dus als het het dan aanpast naar:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$smarty = new Smarty();

Kan je Smarty prima gebruiken voor alles.
Gewijzigd op 24/10/2011 22:01:38 door - Ariën -
 
Niels Engelen

Niels Engelen

24/10/2011 22:06:29
Quote Anchor link
Hoi Aar,

ahh, thx!! de css wordt nu wel geladen. Maar ik de footer komt naast de header te staan en niet onder de twee buttons: inloggen, wachtwoord vergeten.

Heb het nu zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title></title>
<link href="style.css" rel="stylesheet" type="text/css" />


</head>
<body>
<div id="container">
    <div id="header">
      <h1>Antiek Brocante</h1>
      <p></p>
          
          <!--
          <form name="form1" id="form1" method="get" action="index.php">
          <input type="text" name="terms" value="Search..." />
          <input type="hidden" name="p" value="search" />
          <input class=" button" type="submit" name="Submit" value="GO" />
      </form>
      -->
    </div>
    
    <div id="navigation">
        <ul id="navlist">
            <li><a href="index.php">Home</a></li>
            <li><a href="meubels.php">Kristal</a></li>
            <li><a href="kristal.php">wachtwoord veranderen</a></li>
            <li><a href="admin.php">Nieuwe admin</a></li>
            <li><a href="zoek.php">Zoeken</a></li>
            <li><a href="zilver.php">Nieuwe applicatie</a></li>
            <!--
            <li><a href="inloggen.php">Inloggen</a></li>
            -->
            
            
<li><p><strong>Hier kunt u gegevens neerzetten.</strong><br/> </p></li>
        </ul>

  

        </div>
      <div id="sidebar">
      
        <h2></h2>
        <p>  </p></div>
      
          <div id="content">
          
          
    <!-- End of header. -->
 
- Ariën  -
Beheerder

- Ariën -

24/10/2011 22:07:40
Quote Anchor link
Ligt aan je CSS-file.....

Smarty en PHP staat er verder los van het probleem.
 
Niels Engelen

Niels Engelen

24/10/2011 22:09:37
Quote Anchor link
en index.php heb ik nu zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32

<?php
//Roep het bestand aan waarin de Smarty classes staan
require('../Smarty/Smarty.class.php');
//include  "../templates/header.tpl";

$header = new Smarty();
$header->display('templates/header.htm');

//Maak een nieuw object aan genaamd "Smarty"
$smarty = new Smarty();
//$smarty->debugging = true;

$smarty->display('index.html');

//$footer = new Smarty;
$smarty->display('templates/footer.htm');

$smarty->template_dir = "templates"; //Hierin staan de templatebestanden waarvan je gebruik maakt in je project
$smarty->compile_dir = "templates_c"; //Hierin komen de gecompileerde templatebestanden te staan
$smarty->cache_dir = "cache"; //Het is mogelijk om templates te cachen zodat ze niet telkens opnieuw gecompileerd hoeven worden. In dat geval is dit de map waar de gecachede bestanden in komen te staan.
$smarty->config_dir = "configs"; //Deze map wordt gebruikt voor het opslaan van configuratie-bestanden.
$smarty->assign('name','niels');
//$smarty->assign('./templates/header.htm');



//footer.php

//include('templates/footer.htm');


?>
 
- Ariën  -
Beheerder

- Ariën -

24/10/2011 22:10:57
Quote Anchor link
Zie je nou wat ik net typte? Ik heb niet het idee dat je dat gelezen hebt.
Gewijzigd op 24/10/2011 22:11:12 door - Ariën -
 
Niels Engelen

Niels Engelen

24/10/2011 22:15:34
Quote Anchor link
ligt aan me css file.
 
- Ariën  -
Beheerder

- Ariën -

24/10/2011 22:17:10
Quote Anchor link
..en waarom toon je dan PHP-code?

Ook die
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
$header = new Smarty();
$header->display('templates/header.htm');


Smarty hoef je maar één keer te laden. Dat doe je niet voor elke template.
Gewijzigd op 24/10/2011 22:20:17 door - Ariën -
 
Niels Engelen

Niels Engelen

24/10/2011 22:23:05
Quote Anchor link
heb met een andere css geprobeerd, en dan wordt het wel goed weergegeven
 
- Ariën  -
Beheerder

- Ariën -

24/10/2011 22:24:26
Quote Anchor link
Dan zit daar het probleem. Tot nu toe kunnen we je niet verder helpen, tenzij je met wat relevante code aan komt.
 
Niels Engelen

Niels Engelen

24/10/2011 22:27:55
Quote Anchor link
kan je hier ook complete projecten sturen? Bijvoorbeeld een rar-file.
Anders moet je elk losse file copieeren en plakken
 
- Ariën  -
Beheerder

- Ariën -

24/10/2011 22:30:13
Quote Anchor link
Dat is juist niet re-le-vant. En zeg nou zelf, als jij iemand wou helpen, heb jij zin in om 3.000 regels code door te spitten?

Ik denk dat je het antwoord wel snapt.
Gewijzigd op 24/10/2011 22:30:35 door - Ariën -
 
Niels Engelen

Niels Engelen

24/10/2011 22:40:36
Quote Anchor link
Ik gebruik zelf zend studio. Maar bij deze regel:

$smarty = new Smarty();



krijg ik zo uitroep tekentje:Class 'Smarty' not found

Maar het werkt wel. Bedoel als ik compile geen errors.
 
- Ariën  -
Beheerder

- Ariën -

24/10/2011 22:41:58
Quote Anchor link
Daar ligt het probleem niet aan, maar 1 keer je object laden is voldoende.

Je probleem zit in je CSS. Ik vermoed in een missende clear...
Valideer je HTML ook eens.
Gewijzigd op 24/10/2011 22:42:49 door - Ariën -
 
Niels Engelen

Niels Engelen

24/10/2011 22:57:39
Quote Anchor link
ik heb je nog gemaild
 
- Ariën  -
Beheerder

- Ariën -

24/10/2011 23:02:27
Quote Anchor link
Prima, als je het betaald op wilt laten lossen, prima.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.