Avatar billede jalmer Nybegynder
11. oktober 2003 - 17:56 Der er 30 kommentarer og
2 løsninger

Kode der "laver nye mapper"?

Jeg har gloet på noget af www.gamespot.com system. Det er sådan så der kommer en ny mappe med det gældende spil, for den nyhed de laver. Jeg fatter ikke lige helt hvad deres php kode kan hedde, når der kommer nye mapper hver gang de skriver om nye spil.
Et eksempel kunne være Jedi Academy. Det har sin helt egen mappe, og det kan da ikke passe at de manuelt hver gang de skriver om et spil der ikke er skrevet om før.
How do they do it?
Avatar billede htm Nybegynder
11. oktober 2003 - 18:02 #1
Det kunne eks. være lavet med mod_rewrite: http://mbn.dk/Apache/

Så det ikk er en mappe der eksisterer men en virtual sti.
Avatar billede RJFreelance Praktikant
11. oktober 2003 - 18:03 #2
<?php
mkdir("mappenavn", 0777);
?>


:)
Avatar billede RJFreelance Praktikant
11. oktober 2003 - 18:06 #3
Svar :)
Avatar billede RJFreelance Praktikant
11. oktober 2003 - 18:06 #4
Avatar billede jalmer Nybegynder
11. oktober 2003 - 18:22 #5
hvad er så : ", 0777?"
Jeg kan dedsværre ik bruge dit svar htm
Avatar billede htm Nybegynder
11. oktober 2003 - 18:59 #6
Det er helt i orden, nævnte bare en mulighed - men er det fordi du ikke kører med apache?

0777 angiver rettighederne til filen. I dette tilfælde er der fulde rettigheder til alle.
Avatar billede RJFreelance Praktikant
11. oktober 2003 - 19:37 #7
Jeps og det kunne du også læse på den der side ;)
Avatar billede jalmer Nybegynder
11. oktober 2003 - 21:58 #8
Ja hvis jeg havde gidet det ;)
Det er helt i orden, I får lidt point hver...
Avatar billede jalmer Nybegynder
11. oktober 2003 - 22:31 #9
Men hvordan helvede fik de så en index side i den mappe de laver?
Hvad hedder koden til at lave en ny side, uden at lave den? :s
Der kommer selvfølgelig flere point til...
Avatar billede htm Nybegynder
11. oktober 2003 - 22:40 #10
Hvad mener du med at lave en side uden at lave den?

Du kan oprette en fil uden noget indhold med http://dk2.php.net/manual/en/function.touch.php
Avatar billede jalmer Nybegynder
12. oktober 2003 - 10:43 #11
Jeg mente at lige så vel som man laver mappen, så skulle man lave de sider der nu skulle være, uden at sidde og lave dem hver gang i notesblok.
Er der ikke nogen funktion til det?
Avatar billede jalmer Nybegynder
12. oktober 2003 - 10:46 #12
"så skulle man lave de sider der nu skulle være" skulle hedde
"så skulle man samtidig lave de sider der skulle ligge i mappen og vise den information der var blevet indsendt om spillet"
Avatar billede htm Nybegynder
12. oktober 2003 - 11:22 #13
Jo det kan du sagtnes!

kig på funktionerne fopen og fputs

men det lettese ville være at lave det somdatabasestyret via en fil og så lave mapperne virtuelt med mod_rewrite fra apache
Avatar billede jalmer Nybegynder
12. oktober 2003 - 11:26 #14
Hvilke krav er der for at gøre det over apache?
Jeg kan ikke lige huske hvad Apache er
Avatar billede htm Nybegynder
12. oktober 2003 - 11:29 #15
Det er det krav at det kører på en apache, og så kræver det at mod_rewrite er enablet.
Apache er en webserver

tjek her om du ligger på en apache webserver: http://www.webcafe.dk/artikler/apache/htaccessintro/
Avatar billede htm Nybegynder
12. oktober 2003 - 11:30 #16
Grunden til at det er nemmere, er at din løsning med mapperne og filer i hver mappe er meget svær at vedligeholde, og det bliver hurtigt uoverskueligt!
Avatar billede jalmer Nybegynder
12. oktober 2003 - 11:33 #17
hmm, fopen og fput kan jo kun rode med en fil der eksisterer i forvejen.
Der må vel være en funktion der laver en hel ny fil?
Avatar billede jalmer Nybegynder
12. oktober 2003 - 11:35 #18
Jubii!
Den ligger på en apache. Jeg læser lige lidt i det link du gav mig først...
Avatar billede htm Nybegynder
12. oktober 2003 - 11:36 #19
Du åbner filen med fopen med w,w+,a,a+,x eller x+ du har rig mulighed, med disse parametre vil den blive lavet hvis filen ikke eksisterer.

http://dk2.php.net/manual/en/function.fopen.php
Avatar billede jalmer Nybegynder
12. oktober 2003 - 11:36 #20
Og du har ret.
Det ville desuden tage en hulens masse plads.
Avatar billede htm Nybegynder
12. oktober 2003 - 11:37 #21
Ja også det.

Og dejligt at den ligger på apache, det gør det lidt nemmere.
Avatar billede jalmer Nybegynder
12. oktober 2003 - 11:41 #22
Ja, men noget lort at den ligger hos b-one.
Vi fik slettet alt vores data + database for en uge siden, på grund af et serverproblem hos dem. De nægter at yde erstatning.
Avatar billede htm Nybegynder
12. oktober 2003 - 11:48 #23
Ja det lyder ikke for heldigt. Lyder til at de ikke har så meget tjek på det der.
Men du har vel backup? Og hvis det er seriøse data man har kunne man overveje at betale noget mere for webhotel. Man får jo hvad man betaler for...
Avatar billede jalmer Nybegynder
12. oktober 2003 - 11:51 #24
Ja jeg har da heldigvis backup af de fleste sider.
Men ikke lige af databasen.
Ja det kan være du har ret, men det økonomiske skal jo også køre rundt.
Jeg tjekker lige om din mod_rewrite vil du...
Avatar billede jalmer Nybegynder
12. oktober 2003 - 12:02 #25
hmm der står nu dette i min .htaccess:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule ^([0-9]+)/$ /?id=$1

Men den er stadig overbevist om at den skal sige http://www.thegameviewer.dk/vis_nyhed.php?id=1
Hvad har jeg gjort galt?
Avatar billede htm Nybegynder
12. oktober 2003 - 12:30 #26
//Denne linie sætter rewrite on
RewriteEngine on
//Tjekker om det er en mappe eller fil der hedder det der bliver forespurgt på
RewriteCond %{REQUEST_FILENAME} !-F
//Laver selve rewritet. Hr vil den tage alle tal og viderestille til /id=$1 dvs. index.php?id=$1
$1 er det der står i første parantes og der er desuden / bagefter.
RewriteRule ^([0-9]+)/$ /?id=$1

Så som sådan er der ikke noget i vejen med din sætning, og den virker fint efter hensigten! Men hvad er det du vil? Fortæl hvad du vil have forwardet til hvor, så kan jeg lige bikse scriptet sammen.

Dint nuværende script virker fint her: http://www.thegameviewer.dk/1/
Avatar billede jalmer Nybegynder
12. oktober 2003 - 13:37 #27
Det var nu kun for at have et eksempel at jeg tog den med nyheden.
Jeg tænkte på at man havde en slags side der viser en hel masse ting for et gældende spil.
Så når jeg går ind og skriver en anmeldelse af fx GTA, så vil er der en side hvor man kan se om der er skrevet nyheder, anmeldelser og koder til det gældende spil.
Hvis vi siger den hedder spil.php?id=24 så ville den vise links til spillets koder, anmeldelser og nyheder. Det var nu mere for synets skyld at jeg fx ville have det til at hedde /spil/24
Ligesom eksperten har /spm/321546 .
Avatar billede htm Nybegynder
12. oktober 2003 - 13:48 #28
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule ^spil/([0-9]+)/$ /spil.php?id=$1
RewriteRule ^spil/([0-9]+)$ /spil.php?id=$1

Sådan der cirka. Den tager kun imod tal.

Du kan også altid kigge på dokumentationen: http://httpd.apache.org/docs/mod/mod_rewrite.html
Avatar billede jalmer Nybegynder
12. oktober 2003 - 14:01 #29
Mange tak!
Hvordan er det nu man giver ekstra lovlige point? Du får dem hvis du svarer på mit allersidste spm:
Hvordan får man så loadet css'en imens scriptet dur?
For hvis man bruger dit eksempel, så includer den ikke css'en.
Avatar billede htm Nybegynder
12. oktober 2003 - 14:16 #30
Det er fordi at den søger efter CSS'en i den sti der står i adresselinien. og da den ikke finder noget CSS der, melder den fejl.

Du bruger den absolutte sti til din CSS. eks. i stedet for css/style.css bruger du http://www.domain.dk/css/style.css

Du tildeler flere point ved at oprette et nyt spørgsmål i samme kategori, med det antal point du ønsker at give, og kalder det point til <brugernavn>
Avatar billede jalmer Nybegynder
12. oktober 2003 - 14:18 #31
okay du får en 50'er ;)
Avatar billede jalmer Nybegynder
12. oktober 2003 - 14:21 #32
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