moesen Skrevet 7. april 2004 Del Skrevet 7. april 2004 Så hvis jeg lager en side med f.eks. noen artikler kan jeg ha artiklene i en mappe kalt "arklr" og design i en annen mappe og bare bruke id å inkludere de forsjellige filene slik at jeg får en fullstendig side av det? www.blabla.org/index.php?id=5 Forstår ikke helt Lenke til kommentar
joffar Skrevet 7. april 2004 Del Skrevet 7. april 2004 Det er korrekt.. du kan ha design på root deretter kan du ha artikler i en mappe kalt /artklr/ inne i design filen(index.php) kan du da sette opp en switch eller lignende inne i design siden switch ($_GET[id']) { case 1: include('./artikkel1.txt //(kan være txt, inc, php, men du skal ikke ha noe HTML koder her som <head> <body> etc... break; case2: include('./artikkel2 etc... break; . . case 5: include('./artikkel5.... break; default: Her kan du legge inn en feilmelding eller gj;re det slik at bruker blir sendt tilbake til hovedsiden dersom id ikke finnes Lenke til kommentar
moesen Skrevet 7. april 2004 Del Skrevet 7. april 2004 case 1:include('./artikkel1.txt //(kan være txt, inc, php, men du skal ikke ha noe HTML koder her som <head> <body> etc... Hvorfor ikke? Hvis jeg bruker f.eks. et newscript eller noe til å skrive artikler med også lagre de som php/html forså å lagre de i en mappe kalt "artikler" eller noe. Hvordan er den beste måten og hente fram de på da, hvis det er _bare_ artikkelen som skal forandres(Akkurat som news blir skrevet på sourcecode.no eller noe)? Håper du forstår, litt vanskelig å forklare... Lenke til kommentar
joffar Skrevet 7. april 2004 Del Skrevet 7. april 2004 Grunnen til at du skal begrense deg til HTML koder som du bruker mellom <body> og</body> er at da kan du froandre p[ design siden din, og dermed trenger du ikke forandre på designet på alle artikkel sidene dine for at designet på alle sidene skal være likt. Dersom du vil ha forskjellig design ettersom artikkel, må du bare sørge for at det ikke er noen HTML koder som blir doblet... dvs <html> finnes både i design siden og artikkel side.. da vil du få problemer med å validere siden din.. Lenke til kommentar
moesen Skrevet 7. april 2004 Del Skrevet 7. april 2004 Grunnen til at du skal begrense deg til HTML koder som du bruker mellom <body> og</body> er at da kan du froandre p[ design siden din, og dermed trenger du ikke forandre på designet på alle artikkel sidene dine for at designet på alle sidene skal være likt. Dersom du vil ha forskjellig design ettersom artikkel, må du bare sørge for at det ikke er noen HTML koder som blir doblet... dvs <html> finnes både i design siden og artikkel side.. da vil du få problemer med å validere siden din.. Ah, så jeg ikke får dobbelt opp en tagger mener du? Nei designet skal være det samme, det er bare det på midten/teksten/artikkelen som skal forandres, med ?id=1 kommer det "vanlige" designet og artikkel nr. 1, ikke sant? Lenke til kommentar
joffar Skrevet 7. april 2004 Del Skrevet 7. april 2004 Yepp det er derfor du vil bruke tagger i design siden, og ikke i den siden du includerer. Tror det enkleste er å bruke switchen slik: switch ($_GET[id']) { case 1: $insert = "./artikkel1.txt"; break; case2: $insert = "./artikkel2.txt"; break; . . case 5: $insert = "./artikkel5"; break; default: $insert = "./Default.txt"; Her kan du legge inn en feilmelding eller gj;re det slik at bruker blir sendt tilbake til hovedsiden dersom id ikke finnes <html> <body> <?php include($insert); ?> </body> </html> litt forenklet... Lenke til kommentar
moesen Skrevet 8. april 2004 Del Skrevet 8. april 2004 Takk for hjelpen Har fått det til som jeg vil for øyeblikket(uten at jeg brukte switch faktisk). Men hva om jeg vil ha flere artikkel sider. F.eks: id?=artikkel&nr?=10 Slik at jeg får opp artikkel nr 10. Hvordan blir det da? Blir det det samme eller må jeg forandre på noe? Lenke til kommentar
joffar Skrevet 8. april 2004 Del Skrevet 8. april 2004 Du vil ha flere artikler på samme siden? Er ikke helt sikkert på at jeg skjønner problem stillingen her.. Jeg har flere artikler på samme side på siden min, men jeg bruker mysql...etc Lenke til kommentar
moesen Skrevet 8. april 2004 Del Skrevet 8. april 2004 Du vil ha flere artikler på samme siden?Er ikke helt sikkert på at jeg skjønner problem stillingen her.. Jeg har flere artikler på samme side på siden min, men jeg bruker mysql...etc Ikke på samme siden men en artikkel-side med oversikt over alle artiklene. Når jeg trykker på en skal den artikkelen komme opp. Men hva om artikkelen har mange sider. F.eks: id?=artikkel&side?=2 <----Blir koden slik? Lenke til kommentar
joffar Skrevet 9. april 2004 Del Skrevet 9. april 2004 Hvordan koden blir kommer helt ann på hvordan du setter opp artikkelen og sidene innen artikkelen.. dersom du setter det opp slik som dette: /artkl/artikkelen/1 /artkl/artikkelen/2 /artkl/artikkelen/3 /artkl/artikkelen/4 /artkl/kort_artikkel /artkl/endaen_art kan du bruke /?artid=artikkelen&pageid=2 feks hvor artid akkelr p[ artikkelen og pageid kaller p[ siden innen den artikkelen Men som sagt kommer det helt ann p[ hvordan du har tenkt deg artikkel oppsettet... Lenke til kommentar
moesen Skrevet 9. april 2004 Del Skrevet 9. april 2004 (endret) Mappen "Artikler" inneholder alle artiklene, der hver og en artikkel har sin egen mappe. /Artikler/artikkel1 /artikkel2 /artikkel3 /artikkel4 Inne i f.eks. /artikkel1 er alle sidene sortert. /Artikler/artikkel1/side1.txt /side2.txt /side3.txt Blir koden slik nå da? (id?=artikkel&side?=2) Hvis du ser på artiklene på sourcecode.no så ser du at en artikkel er delt opp i flere sider, det er noe slikt jeg er ute etter... Endret 9. april 2004 av moesen Lenke til kommentar
joffar Skrevet 9. april 2004 Del Skrevet 9. april 2004 Yepp da kan side henvisningen din se slik ut: ?id=artikler&side=2 Du må være forsiktig og sjekket at artikler og side finnes for å unngå at noen sender en sidehenvising med den hensikt å ødelegge el.l Lenke til kommentar
moesen Skrevet 14. april 2004 Del Skrevet 14. april 2004 Yepp da kan side henvisningen din se slik ut: ?id=artikler&side=2 Du må være forsiktig og sjekket at artikler og side finnes for å unngå at noen sender en sidehenvising med den hensikt å ødelegge el.l Takker! Ehh, høres kanskje litt dumt ut men hva er fordelen med slike ting? Lenke til kommentar
phanti Skrevet 14. april 2004 Del Skrevet 14. april 2004 rett og slett for å hindre script som slenger ut brukernavn og passord feks ved at id=www.slemside.se/slemtscriptsomhenterpassord.php , og i koden din så har du include $id; .. no sånt. Håper du skjønner tegninga. Det slemme scriptet blir puttet inn i din egen kode ved hjelp av include, dermed er du sårbar dersom du ikke sjekker om det som includeres(dersom du gjør det på denne måten) er ditt eget, og ikke et annet som kan gjøre skade. Lenke til kommentar
joffar Skrevet 14. april 2004 Del Skrevet 14. april 2004 (endret) Tja det er vel greit dersom det er en stor artikkel... det er sikkert andre måter å gjøre det på også... kommer vel mest an på designeren.. Dersom du har en bedre måte å gjøre det på foreslå det så trådstarter kan se.. EDIT: Kanskje jeg misforstod spørsmålet ditt.... dersom du spør om hvorfor du bør sjekke at siden eksistere på din server, svarte phanti på det.. Endret 14. april 2004 av joffar Lenke til kommentar
phanti Skrevet 15. april 2004 Del Skrevet 15. april 2004 Prøvde kun å svare på spørsmålet hans, for med mindre artikkelen er på typ 10 A4 sider, så velger jeg andre metoder for å hente dem fram. Det eneste jeg inkluderer på sidene mine er filer med metoder og andre felles filer. Resten er spørringer etc.. Når det gjelder inkludering, så er SWITCH en lur metode å gjøre det på.. Lenke til kommentar
jorgis Skrevet 15. april 2004 Del Skrevet 15. april 2004 rett og slett for å hindre script som slenger ut brukernavn og passord feks ved at id=www.slemside.se/slemtscriptsomhenterpassord.php , og i koden din så har du include $id; .. no sånt. Håper du skjønner tegninga. Det slemme scriptet blir puttet inn i din egen kode ved hjelp av include, dermed er du sårbar dersom du ikke sjekker om det som includeres(dersom du gjør det på denne måten) er ditt eget, og ikke et annet som kan gjøre skade. Man kan ikke hente PHP-skript fra andre servere, siden det vil være ferdig parset til harmløst HTML/JS når det sendes til webserveren som skal "knekkes". Men det er litt kjipt at noen får inkludert en side med tvilsomt innhold, for så å ta printscreen og sende det til polisen eller venner og kjente... Lenke til kommentar
Torbjørn Skrevet 16. april 2004 Del Skrevet 16. april 2004 det er vel litt naivt? det er ingenting iveien for at den "harmløse html'en" er kjørbar phpkode. <?php echo "<?php gyldig_php_kode(); ?>"; ?> eller enda enklere: stoppe php-parsing for katalogen det gjelder så php-filen skrives ut som den er. det er bare snakk om hvorvidt man tror ingen i hele verden ville finne på å prøve å sette inn sin egen phpkode inn på siden din. Sjansen for det er vel heller liten. jeg prøver for eksempel ganske ofte. Lenke til kommentar
???????? Skrevet 16. april 2004 Del Skrevet 16. april 2004 Det virker som det er mange som glemmer litt Mange bruker isset, f.eks. isset($_GET['id']). Siden variabelen er satt selv om den er tom, index.php?id= , så er det bedre å bruke empty(). Det er kanskje lurt å validere innholdet i variabelen dere skal include, kan det bare være tall så sjekk at det bare er tall - eller skal det kun være mulig med bokstaver så sjekk dette. Hvis dette ikke lar seg gjøre burde det sjekkes at ikke . eller / forekommer - som i f.eks. index.php?id=../fil Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå