Stránka: 1 z 1
| [ Príspevkov: 8 ] | |
| Autor | Správa |
|---|
Registrovaný: 23.12.10 Prihlásený: 10.09.22 Príspevky: 1056 Témy: 157 | 157 Bydlisko: KK/PP/BA |
Zdravim. S tymto problemom som sa zatial nestretol, a tak by som sa chcel poradit. Z webu mi chodi spam, prazdne maily v intervale 3 maily za tyzden. Tak som sa rozhodol implementovat captchu - recpatcha od googlu. Problem je v tom, ze po jej nahodeni mi prisli v priebehu 22 hodin 2 emaily. Ako je to mozne? Formular mam nastaveny tak, ze pri odoslani sa najorv zavola JS, ktory vyhodnoti a skontroluje vstupne udaje. Ak je vsetko OK, posle to AJAxom PHPcku, ktory este skontroluje captchu a az potom odosle email. Ako mi moze prist prazdny email? Mam implementovat nieco ine na overenie pouzivatela? Dakujem.
_________________ HP ProBook 4530s Intel® Core™ i5-2430M (2.4GHz, 3MB, 2 jadrá)*4GB 1333MHz DDR3*ATI Mobility Radeon HD 6490 1GB + Intel HD Graphics 3000*640GB SATA 5400RPM *Windows 7 Home Premium 64 bitová verzia Lenovo IdeaPad Z50-70 Intel Core i5 4210 Haswell* NVIDIA GeForce GT 840M 4GB + Intel HD Graphics 4000*SSHD 1TB 5400 otáčok + 8GB cache*RAM 4GB* Full HD (1920 × 1080)*Windows 10 pro
Boh je reálny, pokial nebol deklarovaný ako integer |
|
Registrovaný: 24.01.08 Prihlásený: 13.09.17 Príspevky: 14571 Témy: 66 | 66 Bydlisko: Žilina |
To máme tipovať bez akejkoľvek ukážky či kódu?  Podľa tohto popisu "niečo máš zle".
_________________ C#, PHP, ... |
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
A si si istý, že to chodí z toho formulára na webe?
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 23.12.10 Prihlásený: 10.09.22 Príspevky: 1056 Témy: 157 | 157 Bydlisko: KK/PP/BA |
Urcite to prichadza z toho PHPcka. JS: Kód: $(document).ready(function() { $('#send_message').click(function(e) { e.preventDefault(); var error = false; var name = $('#exampleInputName').val(); var email = $('#exampleInputEmail').val(); var subject = $('#exampleInputSubject').val(); var message = $('#exampleInputMessage').val(); if (email.length == 0 || email.indexOf('@') == '-1') { var error = true; $('#exampleInputEmail').addClass("validation"); } else { $('#exampleInputEmail').removeClass("validation"); } if (subject.length == 0) { var error = true; $('#exampleInputSubject').addClass("validation"); } else { $('#exampleInputSubject').removeClass("validation"); } if (message.length == 0) { var error = true; $('#exampleInputMessage').addClass("validation"); } else { $('#exampleInputMessage').removeClass("validation"); } if (name.length == 0) { var error = true; $('#exampleInputName').addClass("validation"); } else { $('#exampleInputName').removeClass("validation"); } if (error == false) { $('#send_message').attr({ 'enabled': 'enable', 'value': 'Sending...' }); $.post("php/email.php", $("#contact_form").serialize(), function(result) { if (result == 'sent') { $('#send_message').attr({ 'enabled': 'enable', 'value': 'send' }); $('#mail_success').fadeIn(500); } else { $('#mail_fail').fadeIn(500); $('#send_message').removeAttr('disabled').attr('value', 'Odošli znova'); } }); } }); });
PHP: Kód: <?php
// ... //
$verify = False;
if(isset($_POST['g-recaptcha-response']) && !empty($_POST['g-recaptcha-response'])){ $secret = '6LeqfAgUAAAAAGDnQKstwJCyHVVSWD1AOp6AFz5T'; $verifyResponse = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret='.$secret.'&response='.$_POST['g-recaptcha-response']); $responseData = json_decode($verifyResponse); if($responseData->success){ $verify = True; } }
if (@mail($to, $predmet, $sprava, $hlavicka) && $verify) {echo 'odoslane';} else {echo 'chyba';} ?>
JS budem este prerabat, zatial to testuje len na prazdne polia. Web je: www.dudach-stav.sk
_________________ HP ProBook 4530s Intel® Core™ i5-2430M (2.4GHz, 3MB, 2 jadrá)*4GB 1333MHz DDR3*ATI Mobility Radeon HD 6490 1GB + Intel HD Graphics 3000*640GB SATA 5400RPM *Windows 7 Home Premium 64 bitová verzia Lenovo IdeaPad Z50-70 Intel Core i5 4210 Haswell* NVIDIA GeForce GT 840M 4GB + Intel HD Graphics 4000*SSHD 1TB 5400 otáčok + 8GB cache*RAM 4GB* Full HD (1920 × 1080)*Windows 10 pro
Boh je reálny, pokial nebol deklarovaný ako integer |
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Robotom je JavaScript ukradnutý, oni prostě urobia submit na form. Skúšal si ten form odoslať bez js? Tak to skús a zistíš, že ten php kód je zlý.
Ten and na konci je asi najväčší problém.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 23.12.10 Prihlásený: 10.09.22 Príspevky: 1056 Témy: 157 | 157 Bydlisko: KK/PP/BA |
Kód: if ($verify) { if (@mail($to, $predmet, $sprava, $hlavicka)) { echo 'odoslane'; } else { echo 'chyba'; } }
Jasne, uz som si to vsimol  Takto je to OK? Cez JS chcem robit kontrolu, aby sa stranka nemusela obnovovat pri chybnom vyplneni udajov. Mam tu kontrolu robit este aj v PHP, alebo by to teraz mohlo takto stacit?
_________________ HP ProBook 4530s Intel® Core™ i5-2430M (2.4GHz, 3MB, 2 jadrá)*4GB 1333MHz DDR3*ATI Mobility Radeon HD 6490 1GB + Intel HD Graphics 3000*640GB SATA 5400RPM *Windows 7 Home Premium 64 bitová verzia Lenovo IdeaPad Z50-70 Intel Core i5 4210 Haswell* NVIDIA GeForce GT 840M 4GB + Intel HD Graphics 4000*SSHD 1TB 5400 otáčok + 8GB cache*RAM 4GB* Full HD (1920 × 1080)*Windows 10 pro
Boh je reálny, pokial nebol deklarovaný ako integer |
|
Registrovaný: 24.01.08 Prihlásený: 13.09.17 Príspevky: 14571 Témy: 66 | 66 Bydlisko: Žilina |
Samozrejme že kontrola musí byť vykonaná aj v PHP.
_________________ C#, PHP, ... |
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Ako píšem, robotom a programátorom je javascript ukradnutý. Pozriem sa na atribút action vo form tagu a odošlem tam POST request s čím chcem. Javascript ma určite nezastaví (nehovoriac o tom, že mi ho stačí vypnúť v prehliadači). Takže ak chceš mať istotu, že do funkcie mail idú správne údaje, musíš to skontrolovať na servri pred ňou.
A áno, takto by to už malo fungovať.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Stránka: 1 z 1
| [ Príspevkov: 8 ] | |
|