Avatar billede tsocm Nybegynder
24. februar 2001 - 00:26 Der er 55 kommentarer og
1 løsning

cgi sms log fejl

Velkommen til!!!
Her kommer kortene på bordet, jeg har et problem, jeg har ændret og pillet for megt, nu kan jeg simpel hen ikke finde fejlen,...
Det har virket men nu virker det ikke mere, 120 P til ham eller hende der kan vise mig hvordan og samidigt vise hvordan jeg laver en log txt fil til dette....


#!/usr/bin/perl

$mailprog = \'/usr/sbin/sendmail\';

read(STDIN, $buffer, $ENV{\'CONTENT_LENGTH\'});
@Datain = split(/&/, $buffer);

$nr=-1;
foreach (@Datain) {
$nr ++;
@Datain[$nr] =~ s/\\+/ /g;
@Datain[$nr] =~ s/%(..)/pack(\"c\",hex($1))/ge;
($name, $value) = split(/=/, @Datain[$nr], 2);
if (lc($name) eq \"mail_til\") {
  $email = $value;
}
if (lc($name) eq \"mail_emne\") {
  $emne = $value;
}
if (lc($name) eq \"ok_html\") {
  $ok_html = $value;
}
if (lc($name) eq \"fejl_html\") {
  $fejl_html = $value;
}
if (lc($name) eq \"mail_fra\") {
  $fra = $value;
}
}

$udbyd = \"fejl\";
if ($email >= 20100000 && $email < 20169999) {
$udbyd = \"sms.tdm.dk\";
} elsif ($email >= 20190000 && $email < 20339999) {
$udbyd = \"sms.tdm.dk\";
} elsif ($email >= 20400000 && $email < 20409999) {
$udbyd = \"sms.tdm.dk\";
} elsif ($email >= 20600000 && $email < 20999999) {
$udbyd = \"note.sonofon.dk\";
} elsif ($email >= 21200000 && $email < 21299999) {
$udbyd = \"sms.tdm.dk\";
} elsif ($email >= 21400000 && $email < 21499999) {
$udbyd = \"sms.tdm.dk\";
} elsif ($email >= 21600000 && $email < 21999999) {
$udbyd = \"sms.tdm.dk\";
} elsif ($email >= 22100000 && $email < 22999999) {
$udbyd = \"note.sonofon.dk\";
} elsif ($email >= 23200000 && $email < 23999999) {
$udbyd = \"sms.tdm.dk\";
} elsif ($email >= 24100000 && $email < 24999999) {
$udbyd = \"sms.tdm.dk\";
} elsif ($email >= 25100000 && $email < 25399999) {
$udbyd = \"note.sonofon.dk\";
} elsif ($email >= 26100000 && $email < 26999999) {
$udbyd = \"sms.mobilix.dk\";
} elsif ($email >= 27100000 && $email < 27399999) {
$udbyd = \"sms.mobilix.dk\";
} elsif ($email >= 28100000 && $email < 28899999) {
$udbyd = \"gsm1800.telia.dk\";
} elsif ($email >= 40100000 && $email < 40119999) {
$udbyd = \"sms.tdm.dk\";
} elsif ($email >= 40130000 && $email < 40219999) {
$udbyd = \"sms.tdm.dk\";
} elsif ($email >= 40250000 && $email < 40469999) {
$udbyd = \"sms.tdm.dk\";
} elsif ($email >= 40500000 && $email < 40999999) {
$udbyd = \"note.sonofon.dk\";
}

if ($udbyd eq \"fejl\") {
$ud_html = $fejl_html;
}
else {
$email = \"$email\\@$udbyd\";

open(MAIL,\"|$mailprog -t\");
print MAIL \"To: $email\\n\";
print MAIL \"From: $fra\\@domaine.dk\\n\";
print MAIL \"Subject:\\n\\n\";
print MAIL \"$emne\\n\";
close (MAIL);

$ud_html = $ok_html;
}
#print \"Content-type: text/html\\n\\n\";
print \"Location: $ud_html\\n\\n\";


/vh
Avatar billede erikjacobsen Ekspert
24. februar 2001 - 00:33 #1
hvad sker der?
Avatar billede tsocm Nybegynder
24. februar 2001 - 00:35 #2
hejsa erikjacobsen man bliver jo så glad nå du deltager... så er derjo i hvertfal en der har tjeck på det.*

Den siger den er blevet sendt, men kommer aldrig frem, til modtageren.

/vh
Avatar billede brain Nybegynder
24. februar 2001 - 00:36 #3
kan du få en prompt på maskinen?
Avatar billede tsocm Nybegynder
24. februar 2001 - 00:38 #4
>> jeg sidder her med mine 20p jeg har tilbage og tænker på hvornår der mon kommer et spm jeg kan svare på:-)

før eller siden burde der jo komme et, måske et 2spm...*lol*

/vh>
Avatar billede tsocm Nybegynder
24. februar 2001 - 00:39 #5
en prompt???
Avatar billede erikjacobsen Ekspert
24. februar 2001 - 00:40 #6
Du får jo næppe nogen af fejlmeddelelserne...
Avatar billede brain Nybegynder
24. februar 2001 - 00:41 #7
ja, en shell på den maskine webserveren kører på. Så kunne du sende en mail med sendmail manuelt, og checke om det var der problemet er...
Avatar billede tsocm Nybegynder
24. februar 2001 - 00:42 #8
erik jacobsen>> der kommer ingen fejl meddelser, men sms kommer aldrig frem,..


brian>>> den virker
Avatar billede tsocm Nybegynder
24. februar 2001 - 00:43 #9
jeg havde et gammel scrip liggende med den gamle nummer serie, og nogle andre ting i, det virkedet.
Avatar billede brain Nybegynder
24. februar 2001 - 00:45 #10
er det uanset hvilken udbyder du sms\'er til?
Avatar billede erikjacobsen Ekspert
24. februar 2001 - 00:46 #11
gab - det er for sent i aften...
Avatar billede tsocm Nybegynder
24. februar 2001 - 00:47 #12
det er jeg ikke klar over jeg bruger teledanmark, og det er det den er testet på!!!
Avatar billede tsocm Nybegynder
24. februar 2001 - 00:48 #13
erik jacobsen>> det er da fredag, vi kan sove længe i morgen :-)
Avatar billede hoejrup Nybegynder
24. februar 2001 - 01:18 #14
Der er ikke umiddelbart nogle fejl i dit script. Har du husket at lave en chmod af dit bibliotek/fil.

/per
Avatar billede tsocm Nybegynder
24. februar 2001 - 01:25 #15
ja det har jeg gjort, jeg kanheller ikke finde nogle fejl...
Ved du hvordan manså laver så man kan logge sms??
Avatar billede brain Nybegynder
24. februar 2001 - 02:05 #16
Hvad for en slags log har du tænkt på. Du kan jo få scriptet til at lave den....jeg skal nok smide en stump script ind der kan klare det, hvis du specificeret hvad du vil have i loggen...
Avatar billede tsocm Nybegynder
24. februar 2001 - 02:20 #17
jeg vil logge ip, tid, dato, fra, besked, nummer, er der noget jeg har glemt.... tro det ikke*ss*

og hvad gemmer man den så i/på/eller hva?
Avatar billede brain Nybegynder
24. februar 2001 - 02:27 #18
logfiler er normalt rene tekstfiler som man bare appender linjer til....
Avatar billede tsocm Nybegynder
24. februar 2001 - 02:30 #19
ok det lyder helt fint, jeg viste ikke med sikkerhed at man kunne skrive til en txt fil der ligger på nettet.

Avatar billede tsocm Nybegynder
24. februar 2001 - 02:31 #20
Er der så nogen styr på al teksten i txt filen?
og hvordan ser jeg siden, hvis online, kan alle så se den?
Avatar billede brain Nybegynder
24. februar 2001 - 02:35 #21
Du skal bruge et sted på serveren hvor du har lov at skrive nogle data....
Avatar billede brain Nybegynder
24. februar 2001 - 02:36 #22
hvor er du hostet, og er der noget der hedder cgi-data, eller sådan noget på sitet...?
Avatar billede brain Nybegynder
24. februar 2001 - 02:36 #23
Vi kan muligvis beskytte loggen med .htaccess filer, og lave et lille log-reader script...
Avatar billede tsocm Nybegynder
24. februar 2001 - 02:38 #24
cgi-bin er der, og hvad det her angår \".htaccess filer\" skal det nok passe**
Avatar billede tsocm Nybegynder
24. februar 2001 - 02:43 #25
det lyder helt fint med mig
Avatar billede brain Nybegynder
24. februar 2001 - 02:52 #26
cgi-bin, ja. hvad med cgi-data, eller nogle andre biblioteker?
Avatar billede tsocm Nybegynder
24. februar 2001 - 03:01 #27
http://www.whitehat.dk/

det er stedet hvor jeg gemmer mine ting jeg kan ikke se nogt omkring cgi-data, men der så en masse som det understøtter på det her sted.:
http://www.whitehat.dk/faq/

ellers er det her hvad der står på forsiden.:

Reklamefri \'hosting\' af din hjemmeside
Adgang til at afvikle dine egne Perl- og PHP-scripts
Derudover understøttess MySQL og SSI
Hjemmeside adressen www.dit_brugernavn.whitehat.dk (kaldet subdomæne)
Ubegrænset plads til din hjemmeside (Max 135 kb per fil)
Mulighed for at udnytte apache-faciliteter såsom .htaccess
Adgang til at installere standardscripts med et museklik
Adgang til brugervenligt filstyringssystem, der giver dig stort set de samme muligheder som en ftp-client - plus nogle ekstra !
Meget mere ..
Avatar billede brain Nybegynder
24. februar 2001 - 03:16 #28
det lader til du godt må skrive i dit dir....jeg ar lavet en ny version af scriptet. Det er her (det kan være det virker nu :)


#!/usr/bin/perl

use CGI;

my $mailprog = \'/usr/sbin/sendmail\';
my $log_file = \"/tmp/sms.log\";

my $q = new CGI;

my $email = $q->param(\"mail_til\");
my $emne = $q->param(\"mail_emne\");
my $ok_html = $q->param(\"ok_html\");
my $fejl_html = $q->param(\"fejl_html\");
my $fra = $q->param(\"mail_fra\");

#print \"Content-Type: text/html\\n\\n\";
#print $email;
#exit 0;

my $udbyd = \"fejl\";
if ($email >= 20100000 && $email < 20169999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 20190000 && $email < 20339999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 20400000 && $email < 20409999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 20600000 && $email < 20999999) {
    $udbyd = \"note.sonofon.dk\";
} elsif ($email >= 21200000 && $email < 21299999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 21400000 && $email < 21499999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 21600000 && $email < 21999999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 22100000 && $email < 22999999) {
    $udbyd = \"note.sonofon.dk\";
} elsif ($email >= 23200000 && $email < 23999999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 24100000 && $email < 24999999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 25100000 && $email < 25399999) {
    $udbyd = \"note.sonofon.dk\";
} elsif ($email >= 26100000 && $email < 26999999) {
    $udbyd = \"sms.mobilix.dk\";
} elsif ($email >= 27100000 && $email < 27399999) {
    $udbyd = \"sms.mobilix.dk\";
} elsif ($email >= 28100000 && $email < 28899999) {
    $udbyd = \"gsm1800.telia.dk\";
} elsif ($email >= 29000000 && $email < 29899999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 40100000 && $email < 40119999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 40130000 && $email < 40219999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 40250000 && $email < 40469999) {
    $udbyd = \"sms.tdm.dk\";
} elsif ($email >= 40500000 && $email < 40999999) {
    $udbyd = \"note.sonofon.dk\";
}

if ($udbyd eq \"fejl\") {
    $ud_html = $fejl_html;
}
else {
    $email = \"$email\\@$udbyd\";
 
    open(MAIL,\"|$mailprog -t\");
    print MAIL \"To: $email\\n\";
    print MAIL \"From: $fra\\@domaine.dk\\n\";
    print MAIL \"Subject:\\n\\n\";
    print MAIL \"$emne\\n\";
    close (MAIL);

    $ud_html = $ok_html;
}

# Lav log entry...
if ( open(FH,\">>$log_file\") ) {
    print FH \"[ \" . localtime() . \"]\\t\".$ENV{\'REMOTE_ADDR\'}.\"\\t$email\\t$fra\\t$emne\\n\";
}
close FH;

print \"Location: $ud_html\\n\\n\";

exit 0;



...det du skal ændre er

my $log_file = \"/tmp/sms.log\";

som istedet skal være...

my $log_file = \"sms.log\";

...hvis du må skrive i dit documentroot...

Avatar billede tsocm Nybegynder
24. februar 2001 - 03:27 #29
oki skal jeg oprette en text fil eller hvordan gør jeg?
eller skal jeg bare ligge det ind?
Avatar billede brain Nybegynder
24. februar 2001 - 03:31 #30
Jeg laver lige et eksempel på whitehat....http://www.whitehat.dk/jdtest/testsms.html

virker nok om få minutter...
Avatar billede tsocm Nybegynder
24. februar 2001 - 03:33 #31
jeg skal lige høre dig, er det som det skal se ud eller skal jeg sætte noget fra det gamle script ind idet???
Avatar billede brain Nybegynder
24. februar 2001 - 03:39 #32
Det er sådan det skal se ud. Prøv at sende en SMS til dig selv fra det (min mobil ligger inde på arbejdet, så jeg kan ikke teste selv)
Avatar billede tsocm Nybegynder
24. februar 2001 - 03:42 #33
oki
Avatar billede tsocm Nybegynder
24. februar 2001 - 03:42 #34
så er det gjort
Avatar billede tsocm Nybegynder
24. februar 2001 - 03:43 #35
men jeg kom til en side der ikke eksistere, men det betyder jo også at der ikker er noget galt med scriptet, men beskeder er ikke kommet
Avatar billede tsocm Nybegynder
24. februar 2001 - 03:45 #36
nu kom jeg til ok siden , prøver lig en tdm mobil i stedet.....
Avatar billede brain Nybegynder
24. februar 2001 - 03:53 #37
Hvis du lige smider din email, så får du mit whitehat, og noget admin info....så kan du se hvordan det skal lige....forklaring medfølger naturligvis...
Avatar billede tsocm Nybegynder
24. februar 2001 - 03:57 #38
hold da helt op det er første gang det har virket på den teleon***
Avatar billede brain Nybegynder
24. februar 2001 - 04:00 #39
Det er fordi jeg har smækket nogle nye numre ind. Du skal lige checke om det er det rigtige og opdaterede sæt af numre...
Avatar billede brain Nybegynder
24. februar 2001 - 04:01 #40
Hvad med din email adresse, så jeg kan komme i seng :)
Avatar billede brain Nybegynder
24. februar 2001 - 04:03 #41
jeg har kodet loggen. Du skal bare have et password så kan du ramme http://www.whitehat.dk/jdtest/admin/viewlog.cgi
Avatar billede tsocm Nybegynder
24. februar 2001 - 04:05 #42
har du sendt den?
Avatar billede brain Nybegynder
24. februar 2001 - 04:06 #43
jeg skal lige have din email adresse....
Avatar billede tsocm Nybegynder
24. februar 2001 - 04:06 #44
jeg har jo sendt den på sms
Avatar billede tsocm Nybegynder
24. februar 2001 - 04:07 #45
du kan også bare sende den til mig på sms du har jo nummert*
Avatar billede brain Nybegynder
24. februar 2001 - 04:08 #46
er det yahoo adressen?
Avatar billede tsocm Nybegynder
24. februar 2001 - 04:08 #47
ja det er det
Avatar billede brain Nybegynder
24. februar 2001 - 04:09 #48
logger siger at du har sms\'et til 2 numre...
Avatar billede tsocm Nybegynder
24. februar 2001 - 04:12 #49
oki mange tak for hjælpen...... jeg har ikke modtaget den men den kommer jo nok*

Sov godt :-)

/vh
Avatar billede brain Nybegynder
24. februar 2001 - 04:13 #50
er sendt---
Avatar billede tsocm Nybegynder
24. februar 2001 - 04:13 #51
hvis du er der, har jeg ikke modtaget dem endnu!!!
Avatar billede tsocm Nybegynder
24. februar 2001 - 04:15 #52
fatter ikke en brik......
*jeg mener det er sq da underligt*

Avatar billede tsocm Nybegynder
24. februar 2001 - 04:17 #53
jeg tror sq ikke de kommer.... eller gør de...
Avatar billede tsocm Nybegynder
24. februar 2001 - 04:17 #54
tak for mailen
Avatar billede brain Nybegynder
24. februar 2001 - 04:18 #55
forklarer den det OK?
Avatar billede tsocm Nybegynder
24. februar 2001 - 04:37 #56
ja med undtagelse af en ting,....???
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
Kurser inden for grundlæggende programmering

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