Visste inte hur jag skulle söka, så jag postar direkt. Är det så att liknande trådar vart uppe tidigare så får ni som kan gärna göra en sökning åt mig.
Ett vanligt "include-script", man skriver sida?=startsida för att komma dit. Men om någon leker med url:en, och skriver sida?=nerd i stället, men den sidan inte finns, kan man på något sätt ändra i min kod här nedan, så att det kommer upp en text där sidorna visas? T ex. "Sidan du söker finns inte." eller liknande.
Det är i och för sig inga problem att lägga in den, men det är onödigt eftsom jag ersatt den med annan säkerhetskod där tillåtna värden skrivs in i arrayen.
Det är i och för sig inga problem att lägga in den, men det är onödigt eftsom jag ersatt den med annan säkerhetskod där tillåtna värden skrivs in i arrayen.
Aha, okay om du säger det så. Jag kan som sagt ingenting om hur php fungerar, men det verkar du göra. Det är bara så att killen som äger servern grejerna ligger på har hårda säkerhetskrav.
Förstod jag dig rätt så hade du tänkt köra webbplatsen genom att inkludera allt i indexfilen ?
Detta kan ge dig en del bekymmer senare som jag hoppas du är medveten om.
Du kan gärna läsa den här tråden innan du går vidare.
Förstår hur du menar med tråden. Kan inte svara på hur jag gör. Men jag har en fil separat för meny och inkluderar den. Sedan från länkarna i menyn länkar jag in i "main" om man kan säga så.
r/ då jag inte kan php så vet jag inget annat sätt än att använda mig av index.php?sida=guestbook. Går det på nåt annat smidigt sätt utan MySQL osv?
Vad jag närmast tänkte på med den länken var att istället för att genom index.php?sida=guestbook utgå från det som är gemensamt och sedan inkludera det som är unikt, göra tvärtom utgå från det som är unikt och inkludera det som är gemensamt; alltså använda dig av guestbook.php istället och inkludera de delar som är unika för varje sida.
Indexinkludering (index.php?sida=guestbook) har en viss förmåga att ställa till problem med sessioner, headers mm om man inte håller tungan rätt i mun, och det kan vara besvärligt att integrera skript man hittar på nätet på sin sida.
Den enklaste lösningen är då att överst i index.php lägga:
<?php
ob_start();
Ett bättre sätt är att posta alla formulär, länkar m.m. som vill ändra på något i databas eller liknande, till separata skript som sedan skickar vidare till indexfilen med rätt variabel.
Men som jag ser det så vinner man mycket mindre än man riskerar att få besvär genom att överhuvudtaget använda indexinkludering.
Vad jag ville var bara att du skulle vara medveten om vad indexinkluderingen kunde innebära, innan du fick eventuella problem.
Vad jag närmast tänkte på med den länken var att istället för att genom index.php?sida=guestbook utgå från det som är gemensamt och sedan inkludera det som är unikt, göra tvärtom utgå från det som är unikt och inkludera det som är gemensamt; alltså använda dig av guestbook.php istället och inkludera de delar som är unika för varje sida.
Indexinkludering (index.php?sida=guestbook) har en viss förmåga att ställa till problem med sessioner, headers mm om man inte håller tungan rätt i mun, och det kan vara besvärligt att integrera skript man hittar på nätet på sin sida.
Den enklaste lösningen är då att överst i index.php lägga:
<?php
ob_start();
Ett bättre sätt är att posta alla formulär, länkar m.m. som vill ändra på något i databas eller liknande, till separata skript som sedan skickar vidare till indexfilen med rätt variabel.
Men som jag ser det så vinner man mycket mindre än man riskerar att få besvär genom att överhuvudtaget använda indexinkludering.
Vad jag ville var bara att du skulle vara medveten om vad indexinkluderingen kunde innebära, innan du fick eventuella problem.
Aha, okay. Eftersom detta var det enda sättet jag visste, så var det enklaste sättet för mig. Skönt att slippa allt vad frames heter.
Men om man vill använda sig av tex. index.php, bilder.php osv. måste man då använda databaser? eller kan du någon sida med en enkel lathund/tutorial? vore skoj att avancera lite.
Den stora skillnaden är att du har en output till webbläsaren innan du inkluderar själva skriptet.
Det innebär att du kan få problem med eventuella headers i de filer du inkluderar.
Det gäller att du verkligen vet vad du gör när du inkluderar skript du hittat på webben någonstans, hur du ska hantera de eventuella headers typ session_start(), header() eller setcookie() som kan tänkas ingå i dessa skript.
Du får alltså inte ha någon output före dessa headers, och det gäller för dig att skriva om dessa skript så du får det hela rätt.
Det kan innebära att du får bryta ut en del kod till egna filer för att få det att fungera.
Eller så använder du ob_start.
Motsvarande gäller naturligtvis de skript du skriver själv.
Jag säger alltså inte att det inte går, men att du kan få problem om du inte är helt säker på hur du hanterar sådana saker.
Sen finns det en estetisk sida av det också.
Själv tycker jag att index.php?sida=guestbook är evinnerligt fult jämfört med guestbook.php
Och ännu fulare är vad man kan se ibland: www.domän.com/?sida=guestbook.
Sen kan det påverka din indexering hos sökmotorerna negativt också om du använder querystringen för att styra visningen av endast en sida.
Sen finns det en estetisk sida av det också.
Själv tycker jag att index.php?sida=guestbook är evinnerligt fult jämfört med guestbook.php
Och ännu fulare är vad man kan se ibland: www.domän.com/?sida=guestbook.
Det där har jag också tänkt på däremot. Jag tycker också det ser bättre ut. Absolut. Men vad jag inte förstår är hur man ska göra för att få det att se ut så. Vill inte verka dum, men jag förstår inte hur du gör i ditt exempel du hade på länken.
Jag förstår inte vad det är som du inte förstår, och hur jag ska förklara det tydligare.
Det som är gemensamt för utseendet på samtliga sidor lägger du i egna filer, som du sedan inkluderar. Du kan här också ha variabler för saker som kan vara unika för sidan, t.ex <title>.
Strukturen för t.ex guestbook.php skulle då kunna bli:
<?php
// Om du hanterar sessioner på sidan.
session_start();
// Eventuell inloggningskontroll lägger du här
// Här lägger du kod som tar hand om postade inlägg
// Här sätter du de variabler som eventuellt ingår i sidhuvudet
// Utskrift av "sidhuvud", alltså HTML-kod som är gemensam för alla sidor
include "top.php";
// Här lägger du koden för visning av gästboken, samt eventuellt formulär
// Utskrift av "sidfot". Den HTML-kod i botten som är gemensam för alla sidor.
include "bottom.php";
?>
Jag förstår inte vad det är som du inte förstår, och hur jag ska förklara det tydligare.
Det börjar väl klarna lite.
så om man gör en startsida så kan det se ut såhär:
<?php
include top.php
$rubrik=hej osv
?>
text...
<?php
include bottom.php
?>
startsida.php är alltså bara innehållet MED inkludering av toppen och eventuell sidfot osv? Är jag inne på rätt spår nu?
Det som egentligen strular till det för mitt huvud är hur man länkar sidorna. Skapar man en fil, där man bara inkluderar menyn osv. för att sedan skapa innehåll? Det enklaste vore om någon kunde visa mig ett klart exempel (att ladda ner typ).
Tack för din hjälp!
Tack så mycket för ditt tålamod! Jag har sovit på saken och visste precis vad jag skulle göra när jag vaknade. Förstår inte varför jag aldrig tänkt på det här tidigare för!
266 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91