Avatar
Michal Kuba
Redaktor
Avatar
Michal Kuba:22.2.2015 9:28

Zdravím.
Chci ze své stránky odesílat zprávu na mail určeného uživatele. Adresa je vedená v databázi, ale emaily se nedají odesílat.

if (isset($_GET['autor'])){
$prijemce = Db::queryOne('
                SELECT email
                FROM uzivatele
                WHERE jmeno=?
                LIMIT 1',
$_GET['autor']);}
if ($_POST)
{
       if (isset($_POST['jmeno']) && $_POST['jmeno'] &&
                        isset($_POST['email']) && $_POST['email'] &&
                        isset($_POST['zprava']) && $_POST['zprava'] &&
                        isset($_POST['rok']) && $_POST['rok'] == date('Y'))
        {
            $hlavicka = 'From:' . $_POST['email'];
            $hlavicka .= "\nMIME-Version: 1.0\n";
            $hlavicka .= "Content-Type: text/html; charset=\"utf-8\"\n";
            $adresa = $prijemce;
            $predmet = 'Nová zpráva z Mainosu';
            $uspech = mb_send_mail($adresa, $predmet, $_POST['zprava'], $hlavicka);
            if ($uspech)
            {
                $hlaska = 'Email byl úspěšně odeslán, brzy vám odpovíme.';
                header('Location: reagovat.php?uspech');
                exit;
            }
            else
                $hlaska2 = 'Email se nepodařilo odeslat! Zkontrolujte adresu.';
        }
        else
                $hlaska2 = 'Formulář není správně vyplněný!';
}

Když jsem si nechal vypsat $prijemce, ukáže se mi pouze Array, tudíž PHP se snaží email odeslat na adresu 'Array'.
Nevíte kde je problém?

Editováno 22.2.2015 9:28
 
Odpovědět 22.2.2015 9:28
Avatar
IT Man
Redaktor
Avatar
Odpovídá na Michal Kuba
IT Man:22.2.2015 9:41

Ukládáš to do pole, místo $prijemce použij

$adresa = $prijemce['email'];
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět 22.2.2015 9:41
Usmívej se, zítra už tvůj kód nemusí fungovat!
Avatar
Michal Kuba
Redaktor
Avatar
Odpovídá na IT Man
Michal Kuba:22.2.2015 9:48

Díky moc, takováhle věc mě nějak nedocvakla.. bral jsem to tak, že v $prijemce musí být uložen pouze právě email :)

 
Nahoru Odpovědět  +1 22.2.2015 9:48
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.