---
title: "Mailadmin i PHP"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/48543-mailadmin-i-php"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "LAMP"
published: "2002-07-23T19:21:15.000Z"
updated: "2002-07-28T15:14:05.000Z"
replies: 10
views: 374
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/48543-mailadmin-i-php"
---

# Mailadmin i PHP

## #1 — LAMP, 2002-07-23T19:21Z

hej!

jag har ett nyhetsbrev med väldigt många medlemmar (dryga tusen). Hade först det lagrat i en databas och loopade ut breven med funktionen mail(), vilket tar ohyggligt lång tid (script timeout). Fick rådet av administratören på webhotellet att göra på annat vis. 

Nu har jag tre textfiler:

\* adresser.txt
\* meddelandet.txt
\* utskick.sh

kodsnutten i utskick.sh ser ut så här:

```
#!/bin/bash
ADRESSLISTA=$1
BREVET=$2

cat $ADRESSLISTA |
  while read ADRESS ; do    
   RETURADRESS=`echo $ADRESS | sed 's/@/AT/'`.nyhetsbrev@mindomän.com
   echo skickar till $ADRESS
   ( echo To: $ADRESS
     cat $BREVET
     echo Detta brev var skickat till $ADRESS
     echo Om du inte vill ha fortsatta utskick så vänligen
     echo kontakta minadress@mindomän.com. Tack. ) |
   /usr/sbin/sendmail -f $RETURADRESS $ADRESS
  done
```

Skickar sedan mailen med

```
$ chmod 700 utskick.sh
$ chmod 600 adresser.txt
$ chmod 600 meddelandet.txt
$ ./utskick.sh adresser.txt meddelandet.txt

visar resultat...

$ _
```

Nu till frågan, kan jag göra en enkel admin i PHP som utför uppgiften i utskick.sh och tar emot "nyheten" från ett formulär istället, så att man slipper logga in på SSH var gång?

Permalänk: https://www.webforum.nu/p/48543

## #2 — SPiN, 2002-07-24T14:19Z

En tråd jag missat. :)

Kanske något sånt här fungerar?

```
<?php
if( $_POST[ 'msg' ] == "" ) {
     echo "<form action=\"" . $_SERVER[ 'PHP_SELF' ] . "\" method=\"POST\">";
     echo "<textarea name=\"msg\" id=\"msg\"></textarea>";
     echo "<input type=\"submit\" />";
     echo "</form>";

     exit;
}

$brevMeddelande = $_POST[ 'msg' ];
$filPekare = fopen( "meddelandet.txt", 'w' );
fputs( $filPekare, $brevMeddelande );
fclose( $filPekare );

exec( "./utskick.sh adresser.txt meddelandet.txt", $output );
// passthru( "./utskick.sh adresser.txt meddelandet.txt" );

...
?>
```

exec() exekverar din bash-kommando och resultatet hamnar i arrayen $output så att du kan behandla informationen. Behöver du inte behandla den, kan du lika gärna passthru() som skickar all information direkt tillbaka till klienten.

Hoppas nu att det var nåt sånt du menade. :)

Permalänk: https://www.webforum.nu/p/729612

## #3 — LAMP, 2002-07-27T13:16Z

Den skickar in meddelandet från formuläret i textfilen. Men det skickas aldrig iväg några mail. Jag får inte heller några felmeddelanden. :(

Permalänk: https://www.webforum.nu/p/731624

## #4 — SPiN, 2002-07-27T13:45Z

Testa med att sätta:

```
error_reporting( E_ALL );
```

högst upp i ditt dokument, så får vi se om några notice:es kastas.

Permalänk: https://www.webforum.nu/p/731638

## #5 — LAMP, 2002-07-27T13:55Z

nej, ingenting då heller :(

Permalänk: https://www.webforum.nu/p/731653

## #6 — SPiN, 2002-07-27T13:57Z

Testa följande då:
Kommentera bort raden med exec() i din PHP. Direkt efter att PHP-dokumetet exekverats klart, går du in i kommandoprompten och skriver ditt kommando manuellt:

```
$ ./utskick.sh adresser.txt meddelandet.txt
```

Fungerar det då?

Permalänk: https://www.webforum.nu/p/731654

## #7 — LAMP, 2002-07-28T00:50Z

Ja, det verkar fungera utan större beskymmer. :(

Permalänk: https://www.webforum.nu/p/731968

## #8 — SPiN, 2002-07-28T02:17Z

Det verkar ju väldigt skumt. Du har inte satt safe_mode till on i php.ini?

Permalänk: https://www.webforum.nu/p/731990

## #9 — LAMP, 2002-07-28T12:10Z

Det är på webhotellet jag testkör. Kommer ij åt PHP.INI vad jag vet. Kan man få ut den infon med

php_info() ?

Permalänk: https://www.webforum.nu/p/732099

## #10 — SPiN, 2002-07-28T15:04Z

Jäpp. Och som en liten notis kan jag lägga till att de flesta webhotell brukar köra med safe_mode påslaget.

Permalänk: https://www.webforum.nu/p/732168

## #11 — LAMP, 2002-07-28T15:14Z

Jo, så var fallet. Får se mig i stjärnorna efter detta och använda mig av kommandopromten även i fortsättningen.

Tack för ditt deltagande SPIN!

Permalänk: https://www.webforum.nu/p/732174

---

Tråden på webben: https://www.webforum.nu/amne/php/48543-mailadmin-i-php
