Olen miettinyt tässä, että miten saisin toimimaan lomakkeeni.
Lomakehan ei ole semmonen perus, joka nakkaa kun kaikkiin kohtiin on vastattu, niin johonkin outlookkiin.
Php:lla toteutettu perus lomakkeen lähettäjä, joka on melko samallainen, kun Laaksosen php-oppaassa oleva lähetä lomake.
Ainut vain mikä siin on häikkää, on se että palvelin ei anna suoraan lähettää tätä kautta. (näin asian ainakin ymmärsin?)
Pitäisi saada määritettyä smtp-palvelin, mitä kautta se lähtee(tästäkään en ole täysin varma) sähköpostiini tulemaan.
Manuaalia luin ja katoin muutenki googlesta, mutta kun ei taida php:ta kovin hyvin, en saanut onnistumaan.
Palvelimen osoite on tiedossa, joten ei siitä tarvitse välittää.
Voisitteko vaikka selittää tähän Laaksosen tekemään esimerkkiin:
(laheta_palaute.php)
<?php //muodostetaan merkkijono $_POST-taulukon alkioista foreach($_POST as $nimi => $arvo) { $palaute .= $nimi . ": " . $arvo . "\n"; } //lähetetään palaute PHP:n mail-funktiolla $viesti = mail("ville@esimer.kki", "Palaute", $palaute); //$viesti on true sähköpostin lähetyksen onnistuessa if($viesti) { //jos lähetys onnistui, käyttäjä ohjataan kiitossivulle header("Location: kiitos.php"); } else { //muussa tapauksessa käyttäjä ohjataan virhesivulle header("Location: virhe.php"); } ?>
Onko php.ini asetukset OK ? ja olet laittanut sinne myös smtp palvelimesi.
Hmm itse en pidä kyseistä palvelinta pystyssä, mutta admin vakuuttaa, että php.ini on kunnossa ja smtp palvelin on laitettuna.
Tee ensin ihan perusjuttu, millä testaat, toimiiko sähköpostilähetys palvelimella. Tämä skripti riittää, kun muutat sähköposti-osoitteet:
<?php mail("sun@mail", "Palaute", "OK","From:<e@mail>"); ?>
Yritin tuota Pekka Mansikka -koodinpätkää toteuttaa, mutta eipä tullut ikinä posti perille... Pitääkö tohon from: kohtaan laittaa smtp-palvelimen ip? Ainakin luulisin sen toimivan niin.
Jontzzu kirjoitti:
Pitääkö tohon from: kohtaan laittaa smtp-palvelimen ip?
Eiku, siihen tulee "lähettäjän mailiosoite". Eli testissä vaikka omasi.
Aihe on jo aika vanha, joten et voi enää vastata siihen.