22. november 2013 - 16:29Der er
63 kommentarer og 1 løsning
Matte farver på hjemmeside og meget andet bøvl..
Jeg har i en årrække beskæftiget mig med slægtsforskning og har nu besluttet at ville lave en hjemmeside, hvor jeg kan præsentere mit arbejde. Men da jeg ikke aner noget som helst ud i den ædle kunst at programmere, er jeg startet fra bunden med at lære PHP og for så vidt jeg har kunne læse mig frem til, vil PHP være perfekt til at hive data ud fra en MySql server. Altså befinder jeg mig på stade 0 i PHP-programmering, men kan dog allerede nu se, at der må være noget, jeg gør galt.
F.eks fremstår mine valgte farver på min hjemmeside zerious.dk noget mattere i koderne, end hvis jeg sammenligner dem med farverne øverst på f.eks www.dr.dk/tv/oversigt/ Hvorfor nu det, tænker jeg, farver er vel farver, eller er der noget jeg har misforstået?
Endelig er der opbygningen af selve hjemmesiden, der allerede nu volder problemer. Jeg har en index.php fil liggende i roden og den indeholder dette:
<?php # Script 3.4 - index.php $page_title = 'Forlaget Zerious!'; include ('include/header.html'); ?> <div id="content"> <form> <img src="images/stue.jpg" width="500" height="375" /> </form> </div> <div id="indexfooter"> <p>Billedet taler vel for sig selv - interiør fra en stue.</p> </div>
Den indeholder ikke meget, da den jo kalder en header.html, hvori mine menupunkter er placeret. Den indeholder blandt andet dette:
Jeg har selvfølgelig lavet det på denne måde, så er der kun et sted jeg skal rette, hvis jeg ønsker at tilføje et nyt menupunkt senere. Men problemet her er, at jeg er nødt til at have disse filer f.eks forlag.php liggende ude i roden sammen med index.php, for ellers opstår der fejl. Jeg kan ikke have dem liggende samlet i et underbibliotek, som jeg gerne vil, fordi jeg ikke kan vende tilbage til et andet udgangspunkt. Hvad gør jeg galt her?
Jeg håber virkelig, der er en af jer, der kan hjælpe mig med dette, da jeg jo gerne vil lære og lave det så godt som muligt fra starten.
Teknologi, AI og forretning er i centrum på Computerworlds Cloud og AI Festival i København d. 18. og 19. september. Se hele programmet for den store konference om strategisk brug af Cloud og AI på: www.cloud-festival.dk
../ går altså en mappe op i systemet, hvorfor du kan referere til alle filer - også længere oppe i mappesystemet. Alternativt kan du anvende den fulde filsti. Prøv f.eks. at udskrive:
echo __FILE__;
Der returnerer det absolutte filnavn som starter med /.
Anvender du ovenstående taktik bør det heller ikke give problemer med din menu. Mit råd er dog, at du altid bruger den fulde url til filen (ikke den absolutte), hvilket vil sige at din menu skal se ud som følger:
Bemærk at vi altid starter med en /. Det angiver, at urlen altid skal tilføjes lige efter domænets navn. Ellers ville det have været efter den nuværende url. Giver det mening?
Jo tak, moddi100. Problemet er bare, at det ikke virker :-)
Jeg har flyttet mine menufiler ind i et underbibliotek, der har navnet include, så jeg kun har index.php liggende i roden. Derefter har jeg rettet alle mine menupunkter til dette:
Jeg ville bare høre om du er bekendt med Dansk Data Arkiv's folke- og kirke-bøger fra langt tilbage og de er tilgængelige på maskinlæsbar form (typisk CSV-formatet)
Jeg beklager at jeg i ovenstående bemærkning til snestrup2000 har brugt "svar", det skulle selvfølgelig have været en "skriv en kommentar". Er der nogen, der vil sende et svar, så jeg kan komme af med de point?
Stickano: Jo tak, min menu virker skam. Problemet er blot den, at alle mine filer bliver nødt til at ligge i roden for at blive kaldt. Ikke smart i det lange løb :-( Altså må jeg have problemet løst. Men tusind tak for dit tips og link til farver, skal ind på den side og læse hvordan og hvorledes :-)
moddi100: Nej. Har prøvet alle former for at flytte på filerne til et underbibliotek, ændre i menupunkter som du nævnte tidligere, eller slå en kolbøtte, men nej. Jeg kan f... ikke få det til at virke.
Du kalder menu dokumentet i de forskellige dokumenter, det vil sige sig at dit "index.php" link skal være anderledes, idet index.php ligger i rod folderen.
Hvis du er på index.php filen med denne syntax, skulle de individuelle knapper gerne virke. Med den forudsætning at dokumenterne ligger i en mappe der hedder include.
På den måde hopper den en mappe tilbage (../) for at hente index dokumentet, samt leder efter de andre dokumenter i samme folder.
Dette kommer selvfølgelig også lidt an på hvordan du har opbygget din side. Jeg går lidt ud fra du har <html><head></head><body></body></html> i alle dine dokumenter, og så bare ændrer det indhold hvor det skal ændres, i de forskellige dokumenter? Syntes jeg kan se det på den måde din adresse sti ser ud, alt efter de forskellige dokumenter.
Hvis dette ikke er tilfældet, så ud dyb gerne lidt videre hvordan din side henter oplysninger.
moddi100: Det er lige præcis det jeg gerne vil opnå, at have index.php og menu.html liggende i roden - og undersider samlet i et underbibliotek. Og nu har jeg så testet dit forslag - men nej! Virker ikke. Og jo, jeg har skrevet præcis efter dit forslag, oprettet et underbibliotek med navnet sider, kaldt filerne nøjagtigt det samme som du skriver.
Stickano: Nej mine filer indeholder faktisk ikke ret meget. Her er f.eks hvad filen bogen.php indeholder - og det er dybest set også hvad de andre filer indeholder:
<div id="bogen"> <form> <p>Manuskriptet til min bog har i adskillige år ligget klar til den sidste endelige bearbejdning - og det må vente lidt endnu.<br> For arbejdet med de afgørende og vigtige rettelser vil først blive genoptaget - og endelig gjort færdigt - når hjemmesiden her er nået til et rimelig brugbart punkt.</p> <h4>med venlig hilsen - Erik Jensen</h4> </form> </div>
moddi100: Via localhost henter jeg index.php til min browser og får denne fejl:
Warning: include(../menu.php): failed to open stream: No such file or directory in C:\xampp\htdocs\test1\sider\forside.php on line 2
Warning: include(): Failed opening '../menu.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\test1\sider\forside.php on line 2 Dette er forside.php
Jeg betragtede aldrig dit svar som et "SVAR", selv om jeg godt så din "SVAR"-markering.
At tage point for en i din problemstilling irrelevant kommentar ville være uanstændigt. At den i anden sammenhæng havde en vis relation til emnet, er så en anden betragtning (men ikke point-givende.)
Årsagen til min indlæg var, at jeg i selv tid arbejdede på DDA og var selv med til at taste nogle kirke- og folke-tællinger ind.
Det var morsomt (og aller hel-hest langsommeligt - check og atter check og check og atter check ! )
Jeg var godt klar over, at du ikke ønskede point for dit indlæg. Jeg fik bare dummet mig, da jeg ville svare dig :-) DDD og arkivalieronline er 2 sider jeg stadig bruger igen og igen, de kan jo ikke undværes når man laver slægtsforskning. Men jeg kan da levende forestille mig at det må være en langhåret affærer at indtaste - kan det så ikke glæde dig at utallige mennesker har gavn af dit arbejde :-)
Stickano: Lige nu prøver jeg at få dette enkle eksempel til at virke, så kan jeg altid overføre det til min hjemmeside. Men du har ret i at i eksemplet ligger menu.php og index.php i roden. Kan du evt. se hvad jeg gør galt - og gerne med en løsning?
Hov, undskyld for en dobbelt kommentar her, ved ikke helt forfor jeg trykkede opret.
Men nå, hvis du laver include("menu.php"); i din index.php vel og mærket. Så brude det gerne virke.
Nu er spørgsmålet så,
Har du en index.php side der holder alt designet, og du evt. henter de forskellige dokumenter ud i et specifik område på din index side?
Det må de jo næsten hvis dine sider ikke indeholder mere information. Hvilket vil sige, hvis der kun er 1 dokument der henter dit menu dokument (index.php), og de ligger i samme folder, så skal den bare hedde include("menu.php");
#moddi, jeg er ikke uenig, er bare lidt interesseret i hvordan han gør det, da jeg har på fornemmelsen han gør vil have et dynamisk miljø, men låser sig fast på den måde han gør det på.
Stickano det kunne jo også være at han i hver fil henviste til f.eks. top.php og bund.php - og så havde alt design deri. Det der er det interessante i dette eksempel er i mine øjne ikke så meget hans opbygning af siderne - det skal nok komme, men mere hvordan det reelt virker. Men selvfølgelig enig i, at han kun bør have designet ét sted.
#moddi, "det kunne jo også være" - men så længe vi ikke ved med sikkerhed, ved vi heller ikke hvordan han kan gøre det bedst. Min mening om ikke andet.
Warning: include(C:\xampp\htdocs/menu.php): failed to open stream: No such file or directory in C:\xampp\htdocs\test1\index.php on line 2
Warning: include(): Failed opening 'C:\xampp\htdocs/menu.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\test1\index.php on line 2
Warning: include(C:\xampp\htdocs\menu.php): failed to open stream: No such file or directory in C:\xampp\htdocs\test1\index.php on line 2
Warning: include(): Failed opening 'C:\xampp\htdocs\menu.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\test1\index.php on line 2
<?php include("menu.php"); echo "Dette er " . basename(__FILE__); ?>
Nu kommer menuen i det mindste frem, men hvis jeg vælger et punkt får jeg denne fejl:
Object not found!
The requested URL was not found on this server. The link on the referring page seems to be wrong or outdated. Please inform the author of that page about the error.
If you think this is a server error, please contact the webmaster. Error 404 localhost Apache/2.4.3 (Win32) OpenSSL/1.0.1c PHP/5.4.7
Warning: is_dir(): open_basedir restriction in effect. File(/var/www/users/user/example.org/..) is not within the allowed path(s): (.://var/www/users/user/example.org//:/var/www/tmp/example.org/) in /var/www/users/user/example.org/prepend.php on line 17
Warning: include(C:\xampp\htdocs\menu.php): failed to open stream: No such file or directory in C:\xampp\htdocs\test1\index.php on line 2
Warning: include(): Failed opening 'C:\xampp\htdocs\menu.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\test1\index.php on line 2 Dette er index.php
The requested URL was not found on this server. The link on the referring page seems to be wrong or outdated. Please inform the author of that page about the error.
If you think this is a server error, please contact the webmaster. Error 404 localhost Apache/2.4.3 (Win32) OpenSSL/1.0.1c PHP/5.4.7
Filen hedder test.php ligger i underbiblioteket sider. Når jeg kalder den fra localhost får jeg en 404 fejl. Hvis jeg derimod kalder filer fra: http://localhost/test1/sider/test.php
Ja, så absolut, der er stor forskel. Men hvis jeg nu ændrer det hele - til dit eksempel her - og ellers holder tungen lige i munden, så burde det virke. Eksemplet her har jo vist, at det kan lade sig gøre at have filerne i et underbibliotek på en enkel måde - og samtidig have styr på dem.
Nu skal jeg i gang med at ændre min hjemmeside til din model, så der bliver en bedre oversigt over filerne. Det vil lette arbejdet fremover, men det bliver først i morgen. Tusind tak for hjælpen - og husk at sende et "svar".
Det var så lidt :) Som det tidligere blev antydet, kan det bruges til mange ting. F.eks. kan du når du kommer så langt, samle dit design i en-to filer. I den ene har du det øverste af dit design dvs. diverse "<div>" elementer, din menu m.m. i den anden fil har du så bunden og de afsluttende.
På den måde kan du have samme design på alle dine sider, og alt du skal gøre er at inkludere top.php og bund.php ligesom du gjorde med menuen. Men det kan du jo tænke over
Jeg håber, det er i orden at stille et tillægsspørgsmål: Er det smartest at lave en hjemmeside, hvor man kun har 1 css fil til at style alle sider, eller vil det være bedst at bruge flere? Jeg tænker, at jo flere sider man får, desto større vil den css fil jo også blive...
Synes godt om
Ny brugerNybegynder
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.