Avatar billede total_sejt Nybegynder
11. oktober 2003 - 02:08 Der er 21 kommentarer og
1 løsning

Kopier system

Jeg har lavet et brugersystem til min klasse og det fungerer fint. Nu skal brugersystemet bare ud til flere klasser. Er der en måde så som kan kopiere mappen som vores klasses system ligger i (6b) og oprette en ny mappe som hedder 5b med systemmet i. Der er også en masse tabeller der skal ind i databasen. Desværre er der kun en database til rådighed ialt. Kan man derfor ikke lave noget med mappenavn(6b/5b)_tabelnavn
Altså f.eks. 6b_users

Altså:
Hvordan laver man dette i et simpelt system hvor man bare siger "Opret 5b",:
Den skal så kopiere den 6b's mappe, kalde den 5b og kopiere 6b's tabeller og kalde dem 5b_(tabelnavn)

Håber i forstår
Avatar billede dawin_dk Nybegynder
11. oktober 2003 - 02:23 #1
jeg ville se på at adde et felt til alle tabeller der hed noget med klasseid ... og så lave en ny tabel hvor jeg oprettede de forskellige klasser... så ville det køre på sammen filer ... samme database .. men alt efter hvad man loggede ind som ville man tilhøre de forskellige klasser.... :)
Avatar billede Slettet bruger
11. oktober 2003 - 02:24 #2
Det ville måske gøre databasen lidt overskuelig, hvis alle klassers data var i blanede rækker.
Avatar billede Slettet bruger
11. oktober 2003 - 02:24 #3
_u_overskuelig, skulle der have stået. :)
Avatar billede total_sejt Nybegynder
11. oktober 2003 - 02:29 #4
dawin_dk -> Både fordi at det bliver uoverskueligt og fordinNår eleverner så opretter sig er de jo så nødt til at vælge hvilken klasse de går i. Jeg vil hellere have at de bare skal skrive deres navn og et password.
Jeg vil gerne have adskilt klasserne HELTfra hinanden, men jeg skal nok tænke over forslaget.
Avatar billede dawin_dk Nybegynder
11. oktober 2003 - 02:35 #5
ligesom du sender dem ind på forskellige urls kan du også sende dem ind sårn .. og så så bare smider dem hen i systemet med en parameter ... som siger hva klasse det er ...
Avatar billede dawin_dk Nybegynder
11. oktober 2003 - 02:37 #6
med seperate systemer ender du bare med at en fejlrettelse skal kopieres ud og ændres i 3 forskellige systemer hver gang .. tro mig .. går du først igang med det så ender du med at det bliver uoverskueligt ..
Avatar billede total_sejt Nybegynder
11. oktober 2003 - 02:38 #7
Okay... Det kan jeg godt se der er noget rigtigt over!
Avatar billede dawin_dk Nybegynder
11. oktober 2003 - 02:41 #8
det er en større ting at lave den rettelse ja.. da du skal ind og ændre i sådan set alle opslag der ikke er direkte afhængige af andre opslag ... men det afhænger vel også af hvor omfattende systemer er .. og hvor mange klasser du regner med der på sigt vil blive oprettet....

og så kommer der jo også det sjove... om 1 år hedder 5b altså 6b ... vil du så gå ind og ændre i det hele eller ?
Avatar billede total_sejt Nybegynder
11. oktober 2003 - 02:43 #9
Det må jeg tumle med imorgen, men tak for svarene. Nu har jeg noget at tænke på i nat :)
Avatar billede total_sejt Nybegynder
11. oktober 2003 - 16:22 #10
Jeg har nu oprettet en kolone der hedder klasseid i alle tabeller og skal nu til at ændre alle Select halløjer til WHERE klasseid='$klasseid'.

Opret klasse:
Når "over adminen" vil oprette en ny klasse, kan man så lave det sådan at han/hun indtaster klassenavnet og et password*. Disse dataer bliver indsat i tabellen indstillinger sådan her:

klassenavn | opret_pass | klasseid (auto_increment)
    5.b    |    hej    |            1

Opret bruger/elev:
Når en elev så vil oprette sig skal han/hun gøre det med denne URL:
index.php?klasseid=1 Men kun hvis han/hun går i 5.b

Hvis en fra fx. 7.a vil oprette sig skal han gøre det med fx index.php?klasseid=3

Login
Når man logger sig ind foregår det fra index.php og så tjekker den om der er et brugernavn og en adgangskode i databasen der passer med det indtastede.
Hvis det ikke passer bliver man ikke logget ind ellers bliver man. Ved hver siden tjekker den hvilket klasseid der står i tabellen user ud for ens brugernavn og så udskriver den det fra ens egen klasse ved at sige WHERE klasseid='$klasseid'.

Problemer ved login:
Der kan godt være flere oprettede brugere/elever med det samme navn hvis de går i forskellige klasser. Er det et problem?

Forstår i hvad jeg mener?
Skal det lavet anderledes?
Kan det laves nemmere?

På forhånd tak for hjælpen!!!


*password: For at nogle opfindsomme elever fra fx. 7.b ikke skal skrive index.?klasseid=1 og så oprette sig i 5.b, skal der være et password til hver klasse.
Avatar billede dawin_dk Nybegynder
11. oktober 2003 - 17:38 #11
lyder fornuftigt nok .... dog ville jeg lave så brugernavnet ik kan gå igen .. heller ik hvis det er forskellige klasser ... også af hensyn til hvis der senere ønskes udvidelse med et fælles område for alle klasser .. så er det rart at kunne adskille dem uden problemer
Avatar billede total_sejt Nybegynder
11. oktober 2003 - 22:54 #12
Jeg ville meget gerne have at man kunne bruge det samme brugernavn i fkrosellige klasser. Der er nemlig sandsynligvis flere der hedder Andreas i 6 klasser.
Avatar billede dawin_dk Nybegynder
11. oktober 2003 - 22:55 #13
men så laver du bare så de går ind via hver deres forside (med parameter) .. så kan du bestemme hvilken klasse du sakl logge dem ind i via den parameter ..
Avatar billede total_sejt Nybegynder
12. oktober 2003 - 00:34 #14
Kan du lige komme med noget kode? er ikke helt med :)
Avatar billede dawin_dk Nybegynder
12. oktober 2003 - 07:50 #15
der er ik noget kode... de går bare ind med en parameter.. den gemmer du som et hidden felt.. på lige fod med brugernavn og password... så har du 3 feltet du matcher når de logger ind
Avatar billede total_sejt Nybegynder
12. oktober 2003 - 12:47 #16
Når man opretter en ny klasse så bliver der automatiskindsat et nyt tal i klasseid i indstillinger. (Først er det 1, så 2, så 3 osv...)
Men når man logger ind hvordan ved man så at der skal stå 1,2 eller 3 i det hidden felt?
Avatar billede dawin_dk Nybegynder
12. oktober 2003 - 14:31 #17
du laver f.eks. en mappe der hedder

/klasse/5b

den indeholder en index-side der smider ind en hen på /login.xxx?klasseid=324
Avatar billede total_sejt Nybegynder
18. oktober 2003 - 21:29 #18
Kan man ikke lave noget med at når man har udfyldt felterne i formen (klassenavn, password). Disse dataer bliver indsat i tabellen indstillinger sådan her:

klassenavn | opret_pass | klasseid (auto_increment)
    5.b    |    hej    |            1

Og der bliver oprettet en ny fil med navnet 5.b.php og den skal indeholde:
<?
$klasseid = 1
include("index.php");
?>

Ville det være muligt?
Avatar billede dawin_dk Nybegynder
18. oktober 2003 - 21:38 #19
det skulle egentligt være muligt ja...
Avatar billede total_sejt Nybegynder
25. oktober 2003 - 13:52 #20
Hej og undskyld jeg ikke har skrevet tilbage i lang tid og du får snart dine point. Jeg har bare ET problem tilbage.

Jeg har lavet det jeg har vist ovenover, så alle klasser logger ind fra deres "klassefil.php" som har included klasseid som vist ovenover.

Men f.eks i adresselisten: Man skal være logget ind for at se den. Men hvis man logger ind fra sin egen klassefil og går ind i adresselisten, så kan man jo se sine klassekammerater adresser (hvilket er meningen), men hvis man så skifter klassefil sådan her:
Man kigger på ens egen adresselisten: 5.b.php?action=adresseliste
men så skifter man klassefiln: 7.a.php?action=adresseliste

Nu kan man se 7.a's adresseliste. Det er IKKE smart!
Avatar billede total_sejt Nybegynder
30. oktober 2003 - 14:22 #21
Æuv! Davin_dk -> Drop lige et svar, tak!
Avatar billede dawin_dk Nybegynder
30. oktober 2003 - 14:27 #22
et svar :)

- og for at undgå det må du lægge en begræsning ind at man kun må besøge de filer fra den klasse man tilhører.. du har jo klasse-id nummeret... undersøg som det første i filen at det passer
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