Avatar billede shale Nybegynder
20. januar 2004 - 09:45 Der er 9 kommentarer

Information fra en ascii txt skal exporteres til MySQL database

Her er lige et lille spørgsmål til de morgenfriske.

Jeg har en fil med noget information som jeg har grep'et ud fra en eggdrop userfile. Formatet ser ud som følger:


hOlm      - p                     
--HOSTS *!*@*.users.quakenet.org
houe      - hp                     
--HOSTS *!*@*.adsl-dhcp.tele.dk
Hvalen    - p                     
--HOSTS *!*@*.adsl.cybercity.dk


Det jeg så meget gerne vil have gjort er at få kastet det hele ind i min MySQL database så jeg nemt kan lave et webinterface til at vise selvsamme info.

Problemet er bare at jeg er gået fuldstændigt på grund her... jeg aner ikke hvordan jeg skal gribe det an.

Det skulle gerne være sådan at navnet er primær nøgle da denne jo er unik. og til hver af de navne hører så x antal --HOST linjer (yup der kan være flere --HOST linjer under hvert navn)

Det der står efter navnet: - p eller - hp skal ikke tages med i navnet.

I selve --HOST linjen er det kun selve hostmasken der skal tages med, altså: *!*@*.users.quakenet.org

Må nok lige hellere huske at nævne at det er en linux box det skal køres på.

Håber at i kan hjælpe mig, eller i det mindste lige give mig et fingerpeg :D
Avatar billede Slettet bruger
20. januar 2004 - 10:23 #1
Så skal du egentlig have en eller anden tæller som primær nøgle. Du siger jo, selv, at der til et navn kan være mere end en host.

Din tabel bør nok se således ud:

id int, autoincrement
user varchar(50) NOT NULL
host varchar(50) NOT NULL

Der kan for eksempel være følgende indhold:

id    user    host
1      Kaj      host1
2      Kaj      host2
3      Hugo    host3
4      Kim      host2
5      Hugo    host1

Som du kan se, er user ikke unik, da den skal optræde flere gange.
Avatar billede arne_v Ekspert
20. januar 2004 - 10:23 #2
Jeg tror at du skal skrive et lille loader program i dit yndlings
programmerings sprog.
Avatar billede shale Nybegynder
20. januar 2004 - 11:56 #3
Hehe ja det var nu ikke tabellayoutet jeg havde problemer med men du har helt ret sandbox :D

Det jeg vil have hjælp med er som sagt at få det hevet over i databasen. Men jeg ved bare ikke hvordan jeg gør.
Avatar billede Slettet bruger
20. januar 2004 - 12:07 #4
Jeg kender ikke eggdrop, så jeg har ikke kendskab til dens filformat. Giv lige et eksempel, så jeg kan se en mulighed, hvor en bruger, har mere end en hostmask.

Er der et bestemt sprog, du gerne vil have en løsning i?

Jeg ville foreslå at lave det i Perl eller PHP og lave et cron-job.
Avatar billede shale Nybegynder
20. januar 2004 - 12:13 #5
DR6        - hpL                   
--HOSTS *!*Graver@0x50a2605c.hrnxx9.adsl.tele.dk
--HOSTS *!*DR6@Graver.users.quakenet.org
Drally    - p                     
--HOSTS *!Drally@Drally.users.quakenet.org
DrAnKie    - p                     
--HOSTS *!fisker23@62.79.44.126.adsl.ho.tiscali.dk
--HOSTS *!drankie@wants.a.bit.streetpussy.dk
--HOSTS *!*@[mZ^T-DrAnKie].users.quakenet.org


Selve eggdrop userfilen ser ikke således ud. Dette her er bare et extract jeg har lavet til en anden fil.

Et perl script der kunne løse mit problem ville bestemt være helt i top.
Avatar billede Slettet bruger
20. januar 2004 - 12:19 #6
Er det noget, der skal køres fuldautomatisk, eller kører du det manuelt?
Avatar billede shale Nybegynder
20. januar 2004 - 12:21 #7
Det bliver smidt i min crontab da der helst skal være en forholdsvis opdateret liste.
Avatar billede Slettet bruger
20. januar 2004 - 12:22 #8
Jeg kigger lige på det. Hvilken database bruger du? (De har jo ikke alle helt samme sql-syntaks?
Avatar billede shale Nybegynder
20. januar 2004 - 12:28 #9
Det lyder rigtigt godt :D

Det er MySQL 3.23 der ligger og roder på min server for tiden.
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
Computerworld tilbyder specialiserede kurser i database-management

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