Avatar billede wiberg12 Nybegynder
29. juni 2001 - 09:24 Der er 16 kommentarer

Form+opret side svær opgave ?

Så er der hovedbrud til drengene !

Jeg vil gerne lave en formular som skitseret herunder, men er ikke god nok til at få det til at virke ? . Man skal kunne indtaste 1 emailadresse på ”ham” der udfylder formularen, og 1 email adresse til en modtager, samt en hilsen felt.

Når formularen er udfyldt/afkrydset, dannes der en side, og en link til denne side bliver emailet til modtageren, så kan modtageren klikke på linket og se hvad den anden har skrevet/afkrydset.

Udfra den afkrydsede valg hentes en lydfil frem som præsenteres sammen med den hilsen der blev skrevet.


Her er skellettet:


I fomen skal surferen vælge mellem:

Overskrift a
Valg 1
Valg 2
Valg 3
Valg 4

Overskrift b
Valg 5
Valg 6
Valg 7
Valg 8

Overskrift c
Valg 9
Valg 10
Valg 11
Valg 12

Overskrift d
Valg 13
Valg 14
Valg 15
Valg 16

Fil til der høre til valget

1+5+9+13  vedhæft: filnr1.txt
1+6+10+14 vedhæft: filnr2.txt
1+7+11+15 vedhæft: filnr3.txt
1+8+12+16 vedhæft: filnr4.txt

2+5+9+13 vedhæft: filnr5.txt
2+6+10+14 vedhæft: filnr6.txt
2+7+11+15 vedhæft: filnr7.txt
2+8+12+16 vedhæft: filnr8.txt

3+5+9+13  vedhæft: filnr9.txt
3+6+10+14 vedhæft: filnr10.txt
3+7+11+15 vedhæft: filnr11.txt
3+8+12+16 vedhæft: filnr12.txt

4+5+9+13 vedhæft: filnr13.txt
4+6+10+14 vedhæft: filnr14.txt
4+7+11+15 vedhæft: filnr15.txt
4+8+12+16 vedhæft: filnr16.txt

Der er måske en smartere måde at udvælge en fil på, men den kender jeg ikke.
Avatar billede myplacedk Nybegynder
29. juni 2001 - 10:17 #1
Har du adgang til en database?
I så fald ville jeg gemme de to email-adresser, hilsenen og de 4 valg i en tabel, sammen med en unik id.
Linket i mailen til modtageren er så bare link til dit script, med denne id som parameter.

Det der med at vælge en fil må du forklare nærmere... Husk at der er ikke bare 16 muligheder, men 256...
Hvis det SKAL være på den måde kan du lade valgene få nogle lidt andre tal:
1: 1
2: 2
3: 4
4: 8
5: 16
6: 32
7: 64
8: 128
... osv
Så lægger du de fire værdier sammen, og så får du et tal. Dette tal får man KUN ved at vælge netop disse fire værdier.
Dette kunne være en løsning hvis du SKAL bruge et filnavn pr. kombination.
Avatar billede myplacedk Nybegynder
29. juni 2001 - 10:28 #2
Kom lige i tanker om noget nemmere mht. filnavne...

Hver overskrift har max 9 muligheder, right?
Hvis man så fx. vælger nr. 2 i den første, 3 i den næste, så 2, og så 4. Så kunne filnavnet være:
2324.txt
Avatar billede barefoot Nybegynder
29. juni 2001 - 10:42 #3
Helt præcist hvad er problemet?
Kan du godt finde ud af at hente mailadresserne og sende en mail, eller er det det med sorteringen af filerne som er problemet?
Avatar billede wiberg12 Nybegynder
29. juni 2001 - 10:54 #4
Jeg har database adgang, og der behøver nødvendigvis ikke være en fil for hver valgmulighed, men har du et forslag til koden ?
Avatar billede barefoot Nybegynder
29. juni 2001 - 11:10 #5
jeg spørger igen. Hvilken del er det som du ikke kan finde ud af?
Virker det med at hente og sende mails?
Eller er det det som du skal have hjælp til?
Avatar billede wiberg12 Nybegynder
29. juni 2001 - 11:15 #6
Jeg vil gerne have hjælp til det hele, for jeg er nybegynder !
Avatar billede barefoot Nybegynder
29. juni 2001 - 11:35 #7
Du kan vel godt selv finde ud af at lave formularen ikke? Og sende personen til den side som behandler inputtet.

Vi siger at den side som skal sende mailen hedder send.php

I send.php skriver du:

if($mail og $motgager){ //tjekker om der er indtastet mail og modtager mail.
//behandel det indsatte.
//jeg anbefaler at du ligger alle tallene \"sammen\" så 2+5+6 = 256
//find ud af hvilken fil der skal vises.
//så indsætter du i din database filnavnet, og den besked som blev skrevet
//Så sender du mailen
}

Du lægger tallene sammen sådan: $tal = $tal1.$tal2.$tal3;
Nu kunne du hente filen fra en database, men jeg bruger en switch her i stedet for...
switch($tal){
    case \'15913\': //hvis $tal = 1+5+9+13
        $fil = \'dit_filnafn\'; // Du bestemmer navnet på filen
        break;
    case \'161014\': //hvis $tal == 1+6+10+14
        $fil = \'dit_filnafn\'; //du bestemmer navnet på filen
        break;

}
Sådan fortsætter du med alle dine kombinationsmuligheder.
Hvis ikke du er bekendt med en switch så se her: php.net/switch
Kort fortalt så virker den som en masse if-sætninger
Den tjekker om $tal == det som står efter case.

Nu har du filnavnet og den besked som brugeren indtastede.
Det skal ligges i en database og der skal sendes en mail, men prøv lige at få det andet til at virke først.
Avatar billede barefoot Nybegynder
29. juni 2001 - 11:36 #8
Avatar billede barefoot Nybegynder
30. juni 2001 - 01:31 #9
hvaae\' har du opgivet igen?
Avatar billede barefoot Nybegynder
02. juli 2001 - 00:22 #10
hallo?
Avatar billede wiberg12 Nybegynder
02. juli 2001 - 09:17 #11
Sorry, men jeg blev hasteudkalt til en opgave ! Jeg har ikke opgivet, og vender tilbage Tirsdag.
Avatar billede barefoot Nybegynder
02. juli 2001 - 11:16 #12
okay - det er vel så i morgen du mener?
Avatar billede htx98i17 Professor
05. juli 2001 - 16:43 #13
det var 2 dage siden, heheh
Avatar billede barefoot Nybegynder
06. juli 2001 - 12:50 #14
jep, men jeg kan alligevel ikke hjælpe før midtfynsfestivallen er forbi... - det er begrænset hvor meget man kan via deres netcafe.... - det er derfra jeg skriver nu....
Avatar billede barefoot Nybegynder
09. juli 2001 - 15:34 #15
vaeh.. wiberg var det ikke på tide at komme vidre?
Avatar billede artico Novice
30. august 2001 - 09:20 #16
Jeg har opgivet ??? - for svært for mig endnu, at forstå ?
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