Avatar billede tupsy Nybegynder
24. oktober 2000 - 20:00 Der er 6 kommentarer og
2 løsninger

SMS script til afsending gennen SMTP mailserver.

Hejsa.. Jeg har hentet et CGI script fra Script.dk til at afsende SMS beskeder.
Jeg har webhotel hos Azero.dk på en NT server. De har IKKE et mailprog på NT servere.= scriptet virker IKKE.. Deres svar på hvordan jeg skal få det til at virke er : Få et script der er bygget til at sende over SMTP.. (Se evt. her http://azero.dk/support/nt/default.asp) Er der nogen der kan hjælpe mig med det???
Avatar billede phylox2 Nybegynder
24. oktober 2000 - 20:03 #1
Måske - det er dog noget lettere, hvis man kan se scriptet!
Avatar billede hojben Novice
24. oktober 2000 - 20:04 #2
prøv at smide dit script---
Avatar billede keysersoze Ekspert
24. oktober 2000 - 20:06 #3
det script fra script.sk har en fejl... prøv at lade cgi-filen se sådan ud (el. lign - det er stien til sendmail, der er den vigtige...):

#!/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 \"ok_html\") {
  $fejl_html = $value;
}
if (lc($name) eq \"mail_fra\") {
  $fra = $value;
}
}

$udbyd = \"fejl\";
if ($email >= 20100000 && $email < 20600000) {
$udbyd = \"sms.tdm.dk\";
}
if ($email >= 20600000 && $email < 21000000) {
$udbyd = \"note.sonofon.dk\";
}
if ($email >= 21100000 && $email < 22000000) {
$udbyd = \"sms.tdm.dk\";
}
if ($email >= 22100000 && $email < 23000000) {
$udbyd = \"note.sonofon.dk\";
}
if ($email >= 23000000 && $email < 24000000) {
$udbyd = \"sms.tdm.dk\";
}
if ($email >= 26100000 && $email < 26900000) {
$udbyd = \"sms.mobilix.dk\";
}
if ($email >= 28100000 && $email < 28900000) {
$udbyd = \"sms.mobilix.dk\";
}
if ($email >= 40100000 && $email < 40500000) {
$udbyd = \"sms.tdm.dk\";
}
if ($email >= 40500000 && $email < 50000000) {
$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: cgi\\@soze.dk ($fra)\\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\";
Avatar billede tupsy Nybegynder
25. oktober 2000 - 01:47 #4
Hejsa.. Jeg har endnu ikke tjekket om det script fra keyserzone virker.. Er det lavet så det kan afsende over en smtp mail??

Her er det script jeg ikke kan få til at virke..

#!/usr/bin/perl

#######################################
# FormMail-SMS.cgi                    #
# Copyright Ricki Runge for Script.dk #
# script@script.dk - www.script.dk    #
#######################################

$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 \"ok_html\") {
  $fejl_html = $value;
}
if (lc($name) eq \"mail_fra\") {
  $fra = $value;
}
}

$udbyd = \"fejl\";
if ($email >= 20100000 && $email < 20600000) {
$udbyd = \"sms.tdm.dk\";
}
if ($email >= 20600000 && $email < 21000000) {
$udbyd = \"note.sonofon.dk\";
}
if ($email >= 21100000 && $email < 22000000) {
$udbyd = \"sms.tdm.dk\";
}
if ($email >= 22100000 && $email < 23000000) {
$udbyd = \"note.sonofon.dk\";
}
if ($email >= 23000000 && $email < 24000000) {
$udbyd = \"sms.tdm.dk\";
}
if ($email >= 26100000 && $email < 26900000) {
$udbyd = \"sms.mobilix.dk\";
}
if ($email >= 28100000 && $email < 28900000) {
$udbyd = \"sms.mobilix.dk\";
}
if ($email >= 40100000 && $email < 40500000) {
$udbyd = \"sms.tdm.dk\";
}
if ($email >= 40500000 && $email < 50000000) {
$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\\n\";
print MAIL \"Subject: $emne\\n\\n\";
print MAIL \"\\n\";
close (MAIL);

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



Så er der lidt at kikke på.. :-)

Tupsy!!
Avatar billede tupsy Nybegynder
25. oktober 2000 - 16:25 #5
Så er Keysersoze script tjekket.. Sorry, det virker heller ikke...

Tupsy!!
Avatar billede keysersoze Ekspert
25. oktober 2000 - 17:18 #6
jeg sagde ikke det virkede... bare et den ene linie manglede... du skal tjekke adressen til deres sendmail....

i mit tilfælde var det:

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

men det er jo ikke sikkert det er det hos dig...
Avatar billede tupsy Nybegynder
25. oktober 2000 - 17:32 #7
Hejsa.. Sorry, det er det ikke hos mig...
Men tak fordi du prøvede...

Men, jeg har fået det til at virke ved hjælp af en .php3 fil...

Såå, jeg tror jeg vil lukke dette spørgsmål..
Men, :-) Hvordan gør jeg mon det??
Avatar billede tupsy Nybegynder
25. oktober 2000 - 17:34 #8
>>>Keysersoze<<<
Hmm, ja du fik lige lidt point for at prøve...

Tupsy!!

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