/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Redirecte efter mappe
Fra : Tank


Dato : 12-05-06 12:42

Hej allesammen :)

Jeg er ved at lave et lille (meget lille) blogsystem. Vil lave det så
jeg kan oprette flere blogs til alle i familien. Selve koden til de
basale funktioner i bloggen har jeg altså allerede skrevet, så det er
mere "multibruger" funktionaliteten jeg skal have råd til :)

Problemet er, at når jeg vil oprette en ny blog, skal jeg:
1. Oprette en nye database i MySQL
2. Oprette tabellerne i databasen
3. Kopiere mappen med siden og give den et nyt navn

Jeg vil gerne have så man kan taste fx følgende adresse:
http://mitdomæne.dk/blogs/brugersnavn

Jeg tænkte, at jeg på den måde kunne hente "brugersnavn" fra adressen,
og bruge den variabel til at hente de rette indstillingerne og data fra
MySQL databasen. På den måde kan jeg smide alle data i samme database og
tabel, og så sortere ud fra brugerens navn. Jeg undgår også at skulle
kopiere mappen, og hver brugers indstillinger kan jeg gemme i en tabel.

Det er lidt svært at forklare, men jeg håber i forstår, og hvis ikke, må
jeg prøve at forklare igen :)

Tak for hjælpen på forhånd!

Venlig Hilsen
Tank

 
 
Martin (12-05-2006)
Kommentar
Fra : Martin


Dato : 12-05-06 15:09

Tank wrote:
> Hej allesammen :)
>
> Jeg er ved at lave et lille (meget lille) blogsystem. Vil lave det så
> jeg kan oprette flere blogs til alle i familien. Selve koden til de
> basale funktioner i bloggen har jeg altså allerede skrevet, så det er
> mere "multibruger" funktionaliteten jeg skal have råd til :)
>
> Problemet er, at når jeg vil oprette en ny blog, skal jeg:
> 1. Oprette en nye database i MySQL

Det er ikke særlig mange webhoteller hvor man har lov til at have mere
end 1 database. Har du tænkt over det?

> 2. Oprette tabellerne i databasen

Jeg ville nok gøre noget ala sådan her.

tabel_user
tabel_blogs

Hvor der så er en reference imellem user og blogs.

> 3. Kopiere mappen med siden og give den et nyt navn
>
> Jeg vil gerne have så man kan taste fx følgende adresse:
> http://mitdomæne.dk/blogs/brugersnavn

Hvis man gør som ovenstående kan man så hente det via
blogs/?user=id

Hvor så id kommer fra tabel_user.

>
> Jeg tænkte, at jeg på den måde kunne hente "brugersnavn" fra adressen,
> og bruge den variabel til at hente de rette indstillingerne og data fra
> MySQL databasen. På den måde kan jeg smide alle data i samme database og
> tabel, og så sortere ud fra brugerens navn. Jeg undgår også at skulle
> kopiere mappen, og hver brugers indstillinger kan jeg gemme i en tabel.
>
> Det er lidt svært at forklare, men jeg håber i forstår, og hvis ikke, må
> jeg prøve at forklare igen :)
>
> Tak for hjælpen på forhånd!
>
> Venlig Hilsen
> Tank

Tank (12-05-2006)
Kommentar
Fra : Tank


Dato : 12-05-06 17:07

Nu kører jeg min egen server, så der er relativt set no limit for hvad
jeg kan gøre :)

Problemet med dit forslag er, at meget få brugere vil skrive ?user=navn
når de skal besøge en blog. De vil hellere taste /brugernavn. Efter jeg
havde postet, kom jeg i tanke om et ord som måske kan beskrive hvad jeg
vil: virtuelle mapper. Har set mange sider hvor hver profil har en
adresse fx http://sxc.hu/profile/tank90. Regner dog ikke med, at der på
serveren er en mappe for hver bruger. Det ved jeg dog ikke noget om :)

Forslag er stadig velkomne, bare en forklaring på hvordan sxc.hu metoden
virker, ville stille min tørst efter viden! :D

Venlig Hilsen
Tank

Martin wrote:
> Tank wrote:
>> Hej allesammen :)
>>
>> Jeg er ved at lave et lille (meget lille) blogsystem. Vil lave det så
>> jeg kan oprette flere blogs til alle i familien. Selve koden til de
>> basale funktioner i bloggen har jeg altså allerede skrevet, så det er
>> mere "multibruger" funktionaliteten jeg skal have råd til :)
>>
>> Problemet er, at når jeg vil oprette en ny blog, skal jeg:
>> 1. Oprette en nye database i MySQL
>
> Det er ikke særlig mange webhoteller hvor man har lov til at have mere
> end 1 database. Har du tænkt over det?
>
>> 2. Oprette tabellerne i databasen
>
> Jeg ville nok gøre noget ala sådan her.
>
> tabel_user
> tabel_blogs
>
> Hvor der så er en reference imellem user og blogs.
>
>> 3. Kopiere mappen med siden og give den et nyt navn
>>
>> Jeg vil gerne have så man kan taste fx følgende adresse:
>> http://mitdomæne.dk/blogs/brugersnavn
>
> Hvis man gør som ovenstående kan man så hente det via
> blogs/?user=id
>
> Hvor så id kommer fra tabel_user.
>
>>
>> Jeg tænkte, at jeg på den måde kunne hente "brugersnavn" fra adressen,
>> og bruge den variabel til at hente de rette indstillingerne og data
>> fra MySQL databasen. På den måde kan jeg smide alle data i samme
>> database og tabel, og så sortere ud fra brugerens navn. Jeg undgår
>> også at skulle kopiere mappen, og hver brugers indstillinger kan jeg
>> gemme i en tabel.
>>
>> Det er lidt svært at forklare, men jeg håber i forstår, og hvis ikke,
>> må jeg prøve at forklare igen :)
>>
>> Tak for hjælpen på forhånd!
>>
>> Venlig Hilsen
>> Tank

Martin (13-05-2006)
Kommentar
Fra : Martin


Dato : 13-05-06 01:23

Tank wrote:
> Nu kører jeg min egen server, så der er relativt set no limit for hvad
> jeg kan gøre :)

Hehe, det er også en god ting.
Men engang imellem skal man liiige tænke lidt over, hvis man en dag stod
uden sit eget, men skulle bruge offentligheden.

Godt nok kan du få flere databaser på nogle hoteller, men ikke uden
merpris svjv.


>
> Problemet med dit forslag er, at meget få brugere vil skrive ?user=navn
> når de skal besøge en blog. De vil hellere taste /brugernavn. Efter jeg
> havde postet, kom jeg i tanke om et ord som måske kan beskrive hvad jeg
> vil: virtuelle mapper. Har set mange sider hvor hver profil har en
> adresse fx http://sxc.hu/profile/tank90. Regner dog ikke med, at der på
> serveren er en mappe for hver bruger. Det ved jeg dog ikke noget om :)

Det er noget der kaldes mod_rewrite i Apache, hvis du ellers bruger
apache som webserver.

Dvs, at man fx skriver domæne.dk/blog/username
Så laver Apache det om til
domæne.dk/blog/index.php?id=username (dog ikke synligt i browseren)

Hvis du bruger Apache, så stil spørgsmålet over i apache gruppen, de ved
en helt masse. Jeg er desværre ikke så stærk i det med mod_rewrite.

Manualen: <http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html>
Rimelig detaljeret forklaring samt ekempler
<http://www.sitepoint.com/article/guide-url-rewriting>

svjv. så er der også noget rewriting i IIS webserveren, men da jeg
aldrig har brugt IIS, så ved jeg intet som helst om det hehe.

>
> Forslag er stadig velkomne, bare en forklaring på hvordan sxc.hu metoden
> virker, ville stille min tørst efter viden! :D

Din første metode, jeg må indrømme, jeg ville aldrig nogensinde bruge den.

Hvis man så skifter design eller lign, bang.. så er der dæleme mange
filer der skal rettes i. Hvis jeg ellers har forstået dig rigtigt :)

Geert Lund (12-05-2006)
Kommentar
Fra : Geert Lund


Dato : 12-05-06 17:25

Tank wrote:

> Jeg vil gerne have så man kan taste fx følgende adresse:
> http://mitdomæne.dk/blogs/brugersnavn

Kig nærmere på følgende variable:

$_SERVER["REQUEST_URI"]

og

$_SERVER["PATH_INFO"]

De burde kunne hjælpe dig på vej til netop det du ønsker.

Dog kræver det hvis det skal virke helt transperent for brugeren - at du
kan få lov på dit webhotel til fx at lave en .htaccess fil der siger at
filen med navn blogs altid skal parses som et PHP script (og ja, rigtigt
gættet - i stedet for at lave en mappe der hedder blogs - laver du dit
PHP script i en fil der hedder blogs og håndterer det hele fra den).

Kan ikke lige huske syntaksen til en apache .htaccess fil der kan lave
tricket men det kan nok rimelig nemt graves frem hvis du har muligheden :)

--
Med venlig hilsen
Geert Lund,
www.GLD.dk

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste