hvordan skal jeg lave private beskeder

Tags:    php

<< < 12 > >>
Hej
jeg er igang med at lave en hjemmeside til min efterskole og jeg skal have lavet noget med nogle private beskeder men er ikke helt sikker på hvordan jeg skal gøre.
mit login-system kører med sessions men ikke id
--------------------------------------------------
[THIS IS A SIGNATURE VIRUS! PLEASE COPY IT INTO YOUR OWN SIGNATURE(S)]
--------------------------------------------------
tjeck lige http://www.udvikleren.dk/groups/?gid=18 hvis du vil hjælpe med at lave et godt spil!



13 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Hej
jeg er igang med at lave en hjemmeside til min efterskole og jeg skal have lavet noget med nogle private beskeder men er ikke helt sikker på hvordan jeg skal gøre.
mit login-system kører med sessions men ikke id
--------------------------------------------------
[THIS IS A SIGNATURE VIRUS! PLEASE COPY IT INTO YOUR OWN SIGNATURE(S)]
--------------------------------------------------
tjeck lige http://www.udvikleren.dk/groups/?gid=18 hvis du vil hjælpe med at lave et godt spil!


gem id'et i din session?

Kan ikke lige se hvad du mener. Du kan jo bare gemme de private beskeder i en database, og når en bruger går til en anden underside, kan du tjekke om der er kommet nogle beskeder til personen.

-------------------------------
Hilsen Jimmi Westeberg
http://www.westsworld.dk



Mener du at du allerede har så mange brugere i din tabel, at en autoincrement er lidt sen at sætte igang?

Har du f.eks. 10 brugere i systemet, kan du jo selv lige skrive 1-10 ind manuelt, men er der 100+, kan jeg godt se at det kan gå hen og blive lidt besværligt.

Er alle usernames unikke?

Hvis ja, kan du jo lave en funktion som følger (skal kun køres en gang):

while($i <= 'antal users') {

mysql_query("UPDATE users SET id = '$i' WHERE id < 1 LIMIT 1");
$i++;

}

Når du så har gjort det (kan for så vidt også sker før), sætter du id feltet til autoincrement, og så stiger værdien automatisk hver gang en ny bruger oprettes.

Derefter laver du en tabel ´priv_besked' med felterne:
id
headline
text
sent_by
intended_user
date
viewed

Og så kan du passende lave den tidligere nævne funktion, hvor der kontrolleres for beskeder til brugeren f.eks. hver gang header loades ved at skrive:
Fold kodeboks ind/udKode 


Jeg har ikke prøvet ovenstående selv, men det burde efter min bedste overbevisning virke. Der skal selvfølgelig tilpasses en del, men ideen burde være tydelig...







Jeg ville lave noget lignende dette:

Felt - Type
-------------
id - int
til - int //<= id'et for brugeren der afsender beskeden
fra - int //<= id'et for brugeren der skal modtage beskeden
emne - varchar
besked - text
dato - date //Eller timestamp/datetime alt efter hvad du nu helst vil bruge

Du kan med fordel kigge lidt på diverse mysql artikler her på siden.


til og fra skal ikke være int, da loginsystemets identifikation ikke er numerisk. De skal have samme type som brugernavnet i users tabellen.



Hej
jeg er igang med at lave en hjemmeside til min efterskole og jeg skal have lavet noget med nogle private beskeder men er ikke helt sikker på hvordan jeg skal gøre.
mit login-system kører med sessions men ikke id
--------------------------------------------------
[THIS IS A SIGNATURE VIRUS! PLEASE COPY IT INTO YOUR OWN SIGNATURE(S)]
--------------------------------------------------
tjeck lige http://www.udvikleren.dk/groups/?gid=18 hvis du vil hjælpe med at lave et godt spil!

gem id'et i din session?

Kan ikke lige se hvad du mener. Du kan jo bare gemme de private beskeder i en database, og når en bruger går til en anden underside, kan du tjekke om der er kommet nogle beskeder til personen.

-------------------------------
Hilsen Jimmi Westeberg
http://www.westsworld.dk


er det ikke et stort arbejde at lave med id når man ikke kører med det i forvejen? og hvordan sætter man det ind i den rigtige række?

--------------------------------------------------
[THIS IS A SIGNATURE VIRUS! PLEASE COPY IT INTO YOUR OWN SIGNATURE(S)]
--------------------------------------------------
tjeck lige http://www.udvikleren.dk/groups/?gid=18 hvis du vil hjælpe med at lave et godt spil!



Du må da på en eller anden måde have en identifikation af brugerne (brugernavn, email, numerisk). Ellers har du ikke et login-system.

Medmindre alle brugere er den samme, med samme password. I dette tilfælde kan du ikke kande forskel på brugerne, og du kan derfor ikke lave private beskeder.



Mener du at du allerede har så mange brugere i din tabel, at en autoincrement er lidt sen at sætte igang?

Har du f.eks. 10 brugere i systemet, kan du jo selv lige skrive 1-10 ind manuelt, men er der 100+, kan jeg godt se at det kan gå hen og blive lidt besværligt.

Er alle usernames unikke?

Hvis ja, kan du jo lave en funktion som følger (skal kun køres en gang):

while($i <= 'antal users') {

mysql_query("UPDATE users SET id = '$i' WHERE id < 1 LIMIT 1");
$i++;

}

Når du så har gjort det (kan for så vidt også sker før), sætter du id feltet til autoincrement, og så stiger værdien automatisk hver gang en ny bruger oprettes.

Derefter laver du en tabel ´priv_besked' med felterne:
id
headline
text
sent_by
intended_user
date
viewed

Og så kan du passende lave den tidligere nævne funktion, hvor der kontrolleres for beskeder til brugeren f.eks. hver gang header loades ved at skrive:
Fold kodeboks ind/udKode 


Jeg har ikke prøvet ovenstående selv, men det burde efter min bedste overbevisning virke. Der skal selvfølgelig tilpasses en del, men ideen burde være tydelig...



jeg har kun 3 brugere for den er stadig under opbygning. men er ikke helt sikker på hvordan man arbejder med id det er mere det der er problemet. men alle usernames er unikke og kører dem så med rank. men hvis du kan hjælpe mig med id ville det være rart
--------------------------------------------------
[THIS IS A SIGNATURE VIRUS! PLEASE COPY IT INTO YOUR OWN SIGNATURE(S)]
--------------------------------------------------
tjeck lige http://www.udvikleren.dk/groups/?gid=18 hvis du vil hjælpe med at lave et godt spil!



hvid usernames er unikke, så ER de jo et id. Er det et numerisk id du vil have?



hvid usernames er unikke, så ER de jo et id. Er det et numerisk id du vil have?

det ved jeg ikke. jeg ved faktisk ikke hvordan jeg skal lave det.
--------------------------------------------------
[THIS IS A SIGNATURE VIRUS! PLEASE COPY IT INTO YOUR OWN SIGNATURE(S)]
--------------------------------------------------
tjeck lige http://www.udvikleren.dk/groups/?gid=18 hvis du vil hjælpe med at lave et godt spil!



hvid usernames er unikke, så ER de jo et id. Er det et numerisk id du vil have?
det ved jeg ikke. jeg ved faktisk ikke hvordan jeg skal lave det.
--------------------------------------------------
[THIS IS A SIGNATURE VIRUS! PLEASE COPY IT INTO YOUR OWN SIGNATURE(S)]
--------------------------------------------------
tjeck lige http://www.udvikleren.dk/groups/?gid=18 hvis du vil hjælpe med at lave et godt spil!


vil lige prøve det kodeeksempel som du viste mig men jeg kan ikke rigtig lave en tabel. hvad skal der stå i den? og kan jeg så bare køre den med selve brugernavnet?
--------------------------------------------------
[THIS IS A SIGNATURE VIRUS! PLEASE COPY IT INTO YOUR OWN SIGNATURE(S)]
--------------------------------------------------
tjeck lige http://www.udvikleren.dk/groups/?gid=18 hvis du vil hjælpe med at lave et godt spil!

[Redigeret d. 01/12-04 22:20:13 af Smurf Killer]



lav en tabel med felterne: til fra emne dato besked.

Når en besked skal sendes: til emne besked udfyldes af beugeren, fra dato udfyldes af systemet

Når en bruger besøger siden: Tæl hvor mange beskeder, hvor til matcher brugernavnet

Når en besked læses: Her skal hver besked måske have et ID, for at selecte det, men LIMIT nummer,1 kan også gøre det



<< < 12 > >>
t