Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Sähköpostin lähettämisongelma SMF -foorumissa?!

Sivun loppuun

belthaxor [03.08.2005 14:50:22]

#

Tervehdys!

Olemme asentaneet kaverimme kanssa SMF -foorumin sivuillemme. Ongelma tuli heti alkuun kun lisäämme jäsentä. Kaikissa muissa kokeilemissamme SMF:n foorumeissa rekisteröityminen lähettää sähköpostiin ilmoituksen/salasanan tai pyytää aktivointia sähköpostitse. Meillä foorumi ei teekään sellaista vaan tulee seuraavanlainen virheilmoitus:

2: mail(): "sendmail_from" not set in php.ini or custom "From:" header missing
Tiedosto: E:\sivusto\forum\Sources\Subs-Post.php
Rivi: 377

Olemme jo yrittäneet etsiä ongelmaa useaan otteeseen, mutta emme sitä saa selville. Onko jollain samankaltaista ongelmaa? Mikä avuksi?

PS: Kaikkein huvittavinta on se, että ainoastaan sähköpostin lähettäminen on ongelma. Rekisteröityminen silti onnistuu ja käyttäjä pääsee käyttämään foorumia samantien (meillä ei vaadita siis aktivointia!).

PPS: Sori...ois varmaan pitänyt lisätä että meillä on siis oma palvelin pystyssä. Meillä on kaikki oikeudet mm. php.ini -tiedostoon, mutta emme ymmärrä mikä siellä on muka vialla...jne...

Osaako joku sanoa mitä pitää tehdä?!

Antti Laaksonen [03.08.2005 15:06:14]

#

Ongelma taitaa tosiaan olla mail-funktion toiminnassa - rekisteröinti tietenkin onnistuu, vaikka sähköposti ei lähtisikään matkaan. Virheilmoitus tarkoittaa sitä, että sähköpostin lähettäjää ei ole määritelty. Lähettäjän nimen ja osoitteenhan pystyy tekaisemaan itse, kun käyttää mail-funktiota.

Lähettäjän voi määrittää suoraan mail-funktiossa näin:

$lisä = "From: Aku Ankka <aku.ankka@ohjelmointiputka.net>";
mail($osoite, $otsikko, $viesti, $lisä);

Tuohon neljänteen parametriin voi siis laittaa kaikkia sähköpostiin liittyviä lisätietoja (lähettäjä, liitteet ym.).

Jos mail-funktiossa ei mainita lähettäjää, käytetään oletuslähettäjää, jonka taas pystyy määrittämään php.ini-tiedostossa. Jostain syystä palvelimenne ini-tiedostosta ilmeisesti puuttuu tämä tieto.

belthaxor [03.08.2005 16:12:33]

#

kiitos tuosta ja olen yrittänyt ratkaista sen kautta ongelmaa, mutta ei auta. PHP.ini tiedostossa on oletus osoiteeta ja niin edelleen mutta ei...olen myös kokeillut tuota ehdottamaasi aku ankka juttua, mut ei...ei niin ei...

tosin täytyy ottaa huomioon, että kyseessä on melko laaja keskustelufoorumi, joka sisältää melkoisen määrän koodia, joten tuo aku ankka -juttu ei toimi varmaankaan sen takia, että siellä on joku muu juttu joka sählää...

mutta kysyisin sellaista vielä, että tarviiko komento sendmail jotakin erikoista serveriltä...pitääkö tyyliin CGI -olla asennettuna jne...toimiiko sendmail mm. Windows -palvelimella...vai hä?

PS: entä SMTP -palvelin? mitä se tarvitsee?

Blaze [03.08.2005 16:52:23]

#

Windows-PHP sisältää oman SMTP-klientin, joten erillistä sendmail-binääriä et tarvitse, kuten *nixillä.
php.inistä kun asettaa SMTP (sen arvoksi tulee ISP:si postipalvelimen osoite) ja sendmail_from, niin tuon pitäisi alkaa toimimaan.

Jaqqo [20.08.2005 15:33:13]

#

Mitä teen kun yritän lähettää postia mail-funktiolla, niin lukee näin:

Failed to connect to mailserver at "localhost" port 25, verify
your "SMTP" and "smtp_port" setting in php.ini

Mitä SMTP:seen ja smtp_port:iin pitää laitta php.ini:ssä?

Blaze [21.08.2005 22:44:24]

#

Palveluntarjoajan postipalvelimen osoite ja portti.

Jaqqo [25.08.2005 19:54:56]

#

Entäs kun on oma kone servuna? Eli toisin sanoen oon ite palveluntarjoaja :P

Blaze [25.08.2005 21:23:51]

#

Palveluntarjoaja on se, joka sulle myy nettiyhteyden (Sonera, Elisa...)

Jaqqo [28.08.2005 16:16:14]

#

No nyt lukee:
SMTP server response: 550 Sender address is missing a domain in [tiedosto] on line 12

Jaqqo [28.08.2005 16:23:20]

#

Ja nyt:
SMTP server response: 550 Sender address is invalid in [tiedosto] on line 12

Heikki [28.08.2005 16:52:18]

#

Todennäköisesti palveluntarjoajan palvelin ei hyväksy postin lähettämistä muulla kuin xxxx@palveluntarjoajanmaili.com lähettäjällä. Kokeileppa pistää vaikka oma palveluntarjoajaltasi saamasi mailiosoite lähettäjäksi.

Jaqqo [29.08.2005 17:19:21]

#

Ei toiminut palveluntarjoajan mailiosoitteela.
Laitoin

ini_set("sendmail_from",$_POST['sender']);

niin onnistui.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta