Nefunkční funkce mail()

Vyřešeno2.78K zhlédnutíWebhostingPHP mail
0

Dobrý den,

prosím, mám u Vás zařízený webhosting a řeším problém ohledně formuláře a využití funkce php mail(). Vše se zdá, že odešle – žádná chyba, ale mail nepřijde.

$to = "xxxxx@outlook.cz";
               $subject = "test";
               $txt = "test2;
               $headers = "From: info@moje_domena_na_wedosu.cz";
                     mail($to,$subject,$txt,$headers);

Děkuji za každou radu

Role: Zákazník
Otázka je uzamčena pro nové odpovědi.
JŠ255861 Vybral nejlepší odpověď 25. 6. 2021
0
53.63K Odpověď od WEDOS Internet, a.s. 0 Comments

Vlákno nyní uzavírám z důvodu neaktivity. V případě potřeby založte nový dotaz nebo nás kontaktujte pomocí kontaktního formuláře.

Role: Podpora Web: https://stackoverflow.com/ Vizitka: Roses are Red, Violets are Blue Unexpected '{' on line 32.
JŠ255861 Vybral nejlepší odpověď 25. 6. 2021
0

Ak je mail poslaný funkciou mail, tak outlook ho dosť často blokuje. Aj som to s nimi riešil, ale vždy to časom dopadlo rovnako.

Riešením je posielanie mailov cez SMTP, napr. cez skript PHPMailer

Role: Zákazník+ Web: https://www.mitsoft.sk Vizitka: Venujem sa programovaniu, optimalizácií a affiliate. Poradím Vám s DNS záznamami, htaccess, wordpressom, linuxom, php, sql a všeobecne s webovými technológiami.
MR154880 Odpověděl na otázku 10. 5. 2021
0
49.66K Odpověď od WEDOS Internet, a.s. 0 Comments

Dobrý den.

chyba bude pravděpodobně v nastavené doméně odesílatele/Return-Path, adresu odesílatele zkuste v mail funkci dopsat dle WMS – odesílání e-mailů pomocí mail().

Tedy funkce pak obecně vypadá např. takto

<?php
mail('adresa@prijemce.tld','Předmět','Text zprávy','','-f adresa@odesilatele.tld');
?>

Role: Podpora
PK265670 Odpověděl na otázku 9. 5. 2021
0

Tak jsem zjistil, že funkce funguje jen na určité domény – gmail v pohodě, outlook ne

Role: Zákazník
PK265670 Změnil status na publikováno 9. 5. 2021
0

V vašem přiloženém kódu se žádná chyba zobrazit nemusí.

Testněte tento php kód jestli se změní výsledek.

<?php
    // zapnuti zobrazeni chyb
    ini_set( 'display_errors', 1 );
    error_reporting( E_ALL );
     // parametry pro e-mail
    $from = "test@hostinger-tutorials.com";
    $to = "test@hostinger.com";
    $subject = "Checking PHP mail";
    $message = "PHP mail works just fine";
    $headers = "From:" . $from;
     // pokus o odeslani e-mailu
    if(mail($to,$subject,$message, $headers)) {
  echo "e-mail odeslan.";
    } else {
     echo "e-mail neodeslan.";
    }
?>

Jeden z důvodů může být chybně/nedostatečně vyplněná hlavička.

Dalším důvodem neodeslání e-mailu je max. denní limit 500 e-mailů.

Doporučil bych spíše změnit php kód na odeslní pomocí SMTP.

Role: Zákazník
PK265670 Změnil status na publikováno 9. 5. 2021
0

UP
  $to = "xxxxx@outlook.cz";
$subject = "test";
$txt = "test2";
$headers = "From: info@moje_domena_na_wedosu.cz";
 mail($to,$subject,$txt,$headers);

Role: Zákazník
MN270053 Změnil status na publikováno 9. 5. 2021