Avatar billede christian-BN Praktikant
14. februar 2005 - 14:24 Der er 2 kommentarer og
1 løsning

template (php)

Hej!
Jeg skal til at igang med et lille cms til mig selv og sad
derefter og tænkte på en måde hvordan jeg ville lettest ville få
dataer fra min database ud på min side...
Kan jeg bruge et template?? Dermed mener jeg om det er muligt at
jeg har en grundskabelon som dataerne sættes ind i automatisk når
siden skal vises??
-Jeg har ikke lavet noget endnu, så kan ikke komme med eksempel

Christoffer
Avatar billede dulius Nybegynder
14. februar 2005 - 18:16 #1
Hej.
Du kan gøre det på flere måder, en måde kunne være at have et html-skabelon på hver side. Lav først en mappe til dine templates. Jeg antager her du har lavet mappen templates hvori dine template-filer ligger.

Lad os sige at du har en side der hedder profilinfo.php som skal vise oprettelses-dato og brugernavn for den pågældende bruger.

Du opretter en fil der hedder profilinfo.htm (eller andet - bare du selv har styr på det!), og i den smider du HTML-koden til hvordan siden skal se ud. De steder hvor der skal stå oprettelses-dato og brugernavn kan du i stedet skrive: #OPRETTETDATO# og #BRUGERNAVN#..

Et eksempel på profilinfo.htm:

<b>Brugernavn:</b> #BRUGERNAVN#<br />
<b>Oprettet dato:</b> #OPRETTETDATO#<br />


Når du så skal udskrive siden fra profilinfo.php gør du noget i stil med:

/* Hent data fra database - jeg antager her at dataene ligger i $oprettetdato og $brugernavn */
$printdata = file_get_contents("./templates/profilinfo.htm");
$printdata = str_replace('#OPRETTETDATO#',$oprettetdato,$printdata);
$printdata = str_replace('#BRUGERNAVN#',$brugernavn,$printdata);

print $printdata;

Du skal selvfølgelig også lige lave lidt fejlhåndtering og sådan, men selve essensen af metoden burde være nogenlunde klar i mit eksempel.
Denne metode er dog meget simpel og kan sagtens udbygges.
Desuden kan du anvende template-systemer som SMARTY og lign. - hvis du er interesseret i det, vil jeg råde til at læse noget dokumentation for disse :)

Håber det hjalp lidt på sagen, ellers må du jo bare spørge igen!

Mvh. Julius
Avatar billede Daniel.E Praktikant
02. marts 2005 - 12:35 #2
Jeg kiggede bare på www.php.net for at være ultra doven.

<?php
mysql_connect("localhost", "mysql_user", "mysql_password") or
  die("Could not connect: " . mysql_error());
mysql_select_db("mydb");

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
  printf("ID: %s  Name: %s", $row["id"], $row["name"]);
}

mysql_free_result($result);
?>

Lav en side kaldet:  test.php

Smid alt dit html kode ind i test.php, og gem den.

tag så mit stykke kode og indsæt det hvor som helst imellem <body>....</body> tagsene.

Det er NEMT :)
Avatar billede johnstigers Seniormester
05. november 2006 - 10:23 #3
Lukketid?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester