Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
enes.vint
Člen
Avatar
enes.vint:20.12.2015 23:06

Ahoj,

snazim se poslat pres phpko mail s potvrzenim registrace - pouzivam stejnou funkci uz strasne dlouho, vzdycky fungovala a odesilala i na gmailu, ale ted kdyz hodim web na skolni server, na gmail to nedojde vubec - ani do spamu. Zkousel jsem posilat to na temp mail - funkcni, zkousel jsem web hodit na domenu v praci - funkcni.

<?php
        $registerEmail = "";
        $registerUsername = "";
        $ip = "";
        $created = "";
        $tempPassword = "";
        include("udaje.php");
        $ip = $_SERVER['REMOTE_ADDR'];
        $date = date('Y-m-d H:i:s');
        $conn = new PDO("mysql:host=$server;dbname=$db", $user, $password);
        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $conn->exec("SET CHARSET utf8");
        $stmt = $conn->prepare("INSERT INTO visitors (vis_ip, vis_date) VALUES ('$ip', '$date')");
        $stmt->execute();
        $sentLOGIN = false;
        $sentREGISTER = false;
        if(isSet($_POST["submit"]))
        {
                switch($_POST['submit']) {
                        case 'register':
                                if(isSet($_POST["registerEmail"]) && $_POST["registerEmail"]!=""
                                && isSet($_POST["registerUsername"]) && $_POST["registerUsername"]!="")
                                {
                                        $sentREGISTER = true;
                                        $mail = $_POST["registerEmail"];
                                        $username = $_POST["registerUsername"];
                                        $created = date('Y-m-d H:i:s');
                                        $ip = $_SERVER['REMOTE_ADDR'];
                                        include("udaje.php");
                                        $tempPassword = rand(1111, 99999) * rand(999,18005);
                                        $shaPassword = sha1($tempPassword);
                                        $headers = 'From: [email protected]' . "\r\n" .
                                                           'Reply-To: [email protected]' . "\r\n" .
                                                           'X-Mailer: PHP/' . phpversion();
                                        $mess = 'Hello and welcome to BYTE.' . "\r\n" .
                                                        'Your username: '."$username" . "\r\n" .
                                                        'Your temporary password: ' . "$tempPassword" . "\r\n" .
                                                        'In order to use BYTE, you will have to activate your account.';
                                        $subject = 'BY_TE - Confirm your registration';
                                        mail($mail, $subject, $mess, $headers);
                                        $conn = new PDO("mysql:host=$server;dbname=$db", $user, $password);
                                        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
                                        $conn->exec("SET CHARSET utf8");
                                        $stmt = $conn->prepare("INSERT INTO users (login, password, ip, email, created) VALUES ('$username', '$shaPassword', '$ip', '$mail', '$created')");
                                        $stmt->execute();
                                        header('Location:index.php');
                                        exit;

                                }
                                else
                                {
                                        echo '<script type="text/javascript">alert("Something is missing.");</script>';
                                }
                        break;
                        case 'login':

                        break;
                }
        }
?>

Tohle je vsechno php, ktere tam je (login jeste neni doresenej). Mam ho pred html. Dokazal by mi nekdo poradit nebo me nasmerovat, jak tohle resit? Diky.

 
Odpovědět
20.12.2015 23:06
Avatar
enes.vint
Člen
Avatar
enes.vint:20.12.2015 23:43

UPDATE: prestalo to chodit i na seznam. Momentalne funguje jenom na temp mailu... Data posila spravne. Tusim, ze chyba je v pozici mail()?

 
Nahoru Odpovědět
20.12.2015 23:43
Avatar
Tomáš Maňhal:21.12.2015 1:01

A nejede školní síť na proxy? Třeba je problém tam...

 
Nahoru Odpovědět
21.12.2015 1:01
Avatar
katrincsak
Člen
Avatar
Odpovídá na enes.vint
katrincsak:24.12.2015 9:57

Jediné co mě napadá poradit, tak zda poskytovatel má nějaký mail klient, přes který můžeš odesílat emaily a zkusit to poslat. Pakliže by to blokoval server jako takový, měl by ti přijít zpětný email, že nelze doručit a mnohdy bývá i důvod.

Pakliže poskytovatel nemá klient a máš možnost email přesměrovat na svůj, tak to zkus přesměrovat. Třeba se dozvíš důvod toho proč ti to nejde doručit.

V kodu by problém být asi neměl, pakliže ti to funguje na některé servery odeslat. Hlavička dle mého názoru neobsahuje nic co by mělo vadit. "Osobně neznám 'X-Mailer: PHP/' . phpversion(); ". Jediné co mě napadá, zda by to neblokoval server u některých.

 
Nahoru Odpovědět
24.12.2015 9:57
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 4 zpráv z 4.