Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Graphics: Telefonvásárlási kálváriám....avagy clickbait cím: Horror a hardveraprón
- sziku69: Szólánc.
- Gurulunk, WAZE?!
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- MasterDeeJay: Egy nem átlagos Asus videókártya (GTX950M 2GB GDDR3)
- gban: Ingyen kellene, de tegnapra
- Magga: PLEX: multimédia az egész lakásban
Új hozzászólás Aktív témák
-
adam_
senior tag
válasz
fordfairlane
#17180
üzenetére
Port: 25 or 465 or 2525 mailtrapnél.
Hotmailnél amikor teszteltem 25ös porttal szintén nem ment. -
adam_
senior tag
válasz
DNReNTi
#17132
üzenetére
Sziasztok! Ma volt időm foglalkozni újfent a kontaktformommalk, a PHP-val való elküldésével. JSFiddleben bemásoltam a html form kódját, és a php kódokat is.. http://jsfiddle.net/azxatboa/
Egy tutorial alapján létrehoztam egy security.php , ezenkívül mivel az egész oldal, ergo '1 oldalon van - onepagedesign', ezért az index.php elejére és a végére is illesztettem be erre vonatkozó PHP kódrészleteket, valamint külön létrehoztam contact.php fájlt is, amibe a validálás is benne van, és integrálva van a PHPMailer funkciónalitása. Ezeket mind mellékelem a JSFiddle példában.
Validálás működik, viszont különböző SMTP-vel (privátommal, és fake-kel) is kipróbáltam, viszont mindig amikor a küldésre nyomok, tölt, és a végén "Sorry, could not send email. Try again later";". Ebből gondolom, hogy valahol a hiba a PHPMailer részen belül van, mivel nem a legszélső else ágban található error msg-t kapom vissza, miszerint "Something went wrong".
Valamint egy kis apróság még. A $m - > Subject = 'Contact'; helyett hogyan tudnám belőni, hogy a betreff, etc. tárgy mezőt küldje el mailben, a sima 'Contact' felirat helyett? De ez tényleg apróság, elsőnek jó lenne, ha működne a küldés első körben.
Kérlek megnéznétek, hogy hol lehet a hiba, miszerint a validálás után miért nem küldi el a formulárt a címre?
Nagyon szépen köszönöm,
Ádám
-
adam_
senior tag
válasz
Sk8erPeter
#17130
üzenetére
Köszönöm szépen a válaszod! Bevallom őszintén, hogy amit a hibajelzés után írsz megoldásként, még abba igencsak beletörne a bicskám. Szerintem elsőkörben végigrágom magam ezen az oktatóanyagon, ha már a véháromszkúlszon zagyvaságok vannak, itt csak jobbak lehetnek, majd utána állok neki ezzel foglalkozni.
Sajnos még csak nagyon az alapok vannak meg PHP-ban, bár ha később Frontend pozicióban gondolkozom, úgy vélem, egy ilyen validálás megoldás szerver oldalon elég alap skillekhez tartozik ugye? Szóval ezt amúgy sem árt, ha tudja az ember. Vagy hol az a határ, "amit még jó ha tud" az ember PHP-s alapskillként, ha Frontendbe képzeli el a jövőjét? És mi az ami már általánosságban a Backendes kollégákra vár?
-
adam_
senior tag
válasz
Sk8erPeter
#17128
üzenetére
"Ez alapján próbálkozom perpill.."
Ez nagyon durva.
És te ezt képes vagy hallgatni anélkül, hogy 1 perc után inkább le akarnád tépni a füledet?
(én inkább azt választottam, hogy kilőttem a francba, egyébként még egy tákolmány is, amit összehoz)Engem is idegesített
, de "konkrétabb példa" csak ez volt, amit találtam. A kódhoz nem értek, próbáltam másolni párhuzamosan, meg értelmezni, most pedig működésre szeretném bírni.Ezt úgy illik, hogy a feldolgozás külön fájlban történik, nem ugyanott, ahol a megjelenítéshez tartozó dolgok.
Tehát pl. hozzak létre egy contatform.php és külön csak abba legyen a kontaktformhoz tartozó php kód?
És ezt "hogyan kössem össze" az index.php-val, nem kell úgy mint az external JS-nél, CSS-nél..?A validálást először SZERVEROLDALON írjuk meg, és csak UTÁNA kliensoldalon! A szerveroldali kódodban egy darab ellenőrzés sincsen, amíg ez nincs kész, addig tovább se lépj, először ezt oldd meg.
Pl ez alapján megírhatom a validáláshoz szükséges php kódot mondjuk bele a kontaktformhoz tartozó php kódban?
A PHP-s hibák kijelzése be van állítva a php.ini-ben a fejlesztői gépen? Fejlesztés során mindig a legtöbb hibát kiíró hibabeállítás legyen meg, élesben kell csak elrejteni a hibákat, és azokat inkább naplózni.
Itt találtam egy pár funkciót ami a hibakijelzésekre vonatkozik, igazából vakvilágban tapogatódzom, segítenél, hogy pontosan mely fájlokat kell a php.ini-ben bekapcsolni ahhoz, hogy kijelezze a php-s hibákat is? Majd ezt követően a debuggolás történhet pl. etc. Firebuggal, konzolon keresztül? (Perpill ugye ott nem ír ki semmit sem).
Előre is köszönöm a válaszodat,
Ádám
-
adam_
senior tag
válasz
DNReNTi
#17125
üzenetére
Készítettem egy ilyen formot, (ennek az aljába is van egy kis php:
<?php if(!empty($message)) echo $message; ?> ...és ugyanebben a php fájlban a legfelülre beírtam ezt az általam kreált php kódot a !DOCTYPE HTML> elé.<?php
if(isset($_POST['submit']))
{
$message=
'Name: '.$_POST['name'].'<br />
Email '.$_POST['email'].'<br />
Betreff '.$_POST['betreff'].'<br />
Nachricht: '.$_POST['nachricht'].'
';
require 'phpmailer/PHPMailerAutoload.php';
$mail = new PHPMailer;
$mail->isSMTP();
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Host = "smtp.live.com";
$mail->Port = 465;
$mail->Enchoding = '7-bit';
$mail->Username = "emailcímem";
$mail->Password = "jelszavam";
$mail->SetFrom($_POST['email'], $_POST['name'], $_POST['betreff'], $_POST['nachricht']);
$mail->addReplyTo('info@example.com', 'Information');
$mail->Subject = "New Contact Form Enquiry";
$mail->MsgHTML($message);
$mail->AddAddress("emailcímem", "nevem");
$result = $mail->Send();
$message = $result ? 'Successfully Sent!' : 'Sending Failed';
unset($mail);
}
?>A form validálását is majd egybekötöm a submit button lenyomásával (ezt majd később JS-el megoldom), viszont tesztelésképpen ráirányítottam a scriptet az egyik email címemre, és amikor kitöltöm a formot és rámegyek a submit gomba, kb. 5mp-ig tölt a böngészőm, látszólag mintha csinálna valamit (alul "Waiting for the localhost..." felirattal), majd visszaugrik az oldal elejére. Semmilyen egyéb üzenetet nem kapok vissza. .. És sajnos nem küldi el a tartalmat a megadott emailre sem.
Hol lehet a hiba a gépezetben? Természetesen Apache fut szépen phpmailer mappa bemásolva a honlapom gyökérkönyvtárjaihoz, require 'phpmailer/PHPMailerAutoload.php'; -el szépen ráirányítva az autoloader.
Előre is köszönöm a válaszokat!
Ádám
-
adam_
senior tag
válasz
DNReNTi
#17123
üzenetére
Fake SMTP-nek én a PaperCut-ot használom, korábban már linkeltem a topikban, amilyen egyszerű annyira király.
Köszi mentettem a linket.
Először is: amíg az index.html, az HTML és nem PHP - tehát index.php - addig teljesen okafogyott bármit belehúzni. Magyarul, most, hogy webszervert használsz és PHP-t tanulsz, itt az ideje elfelejteni a html kiterjesztést.
Tehát lementettem az eddig szerkesztett index.html fájlomat index.php-ra, és az összes mappájával együtt bemásoltam a xampp/htdocs könyvtárjába. XAMPP fut (Apache, MYSQL), viszont tesztelésképpen beírtam a header részbe példaként:
<?php
print "Hello world!"; ?>Viszont inspektorral ezt látom:

Valami itt nekem nem kóser, és egyáltalán nem írja ki a header részbe a szöveget sem.
Kérdésem, a XAMPP nem jó, vagy én bénáztam el valamit?
Legelsőnek ugye a PHPMailer-t akartam meghívni, mondjuk a <!DOCTYPE html> tag elé, viszont annak kódját egy az egybe kivetítette a honlapra, mintha egyszerű szöveg lenne.

-
adam_
senior tag
válasz
Sk8erPeter
#17120
üzenetére
Itt reagálnék a html-es topicban adott válaszodra, amit mégegyszer köszönök.
A PHPMailert lokálisan is tudod tesztelni, érdemes először így a postafiókod tömködése helyett, nyilvánvalóan kell hozzá egyrészt webszerver (teljesen mindegy, hogy ez IIS vagy Apache vagy más), de erre amúgy is szükséged van a fejlesztésekhez,
Ehhez feltelepítettem a XAMPP-et, amivel létrehozok egy Apache szervert.
másrészt kell hozzá SMTP-szerver is, de erre jó egy "fake SMTP server" is, pölö:
http://smtp4dev.codeplex.com/
https://nilhcem.github.io/FakeSMTP/Köszi, kipróbálom.

Ehhez persze konfigurálnod kell a php.ini-t is.
Ezt hogyan is kellene?

A letöltés és kibontás után a szükséges helyen pl. require_once segítségével behúzod a PHPMailer működéséhez szükséges fájlokat (amiben az osztály található), majd használod a kódot.
Nem elég ha pl. a honlapom gyökérkönyvtárába kicsomagolom a githubról letöltött phpmailer.zipet, majd pl. az index.html oldalának a legtetejére behúzom az PHPMailer example fájlt php tagek közé, és ott szépen módosítgatom? Vagy erre mindenképp hozzak létre egy külön php fájlt?
Hogy hogyan tudod kiszedni az űrlapból az adatokat, az az alapvető PHP-ismeretek témakörébe tartozik, szóval ennek előbb nézz utána, aztán a másik topicban beszéljük meg, miután próbálkoztál vele.
Ez alapján próbálkozom perpill..Most jött el az ideje, hogy a PHP-val is foglalkozzam, ezért ha hülyeséget is kérdeztem volna az imént, előre is elnézést.
Viszont a levelezést etc. kontaktformhoz mindenképp kell a honlapomnál, más út nincs.Köszönöm a válaszokat,
Ádám
Új hozzászólás Aktív témák
Hirdetés
- MacBook Pro 15 A1707 (2017) asztroszürke és Apple Magic Mouse A1296 Olvasd el figyelmesen kérlek
- Lenovo Tab M10 HD (TB-X306F)
- Samsung Galaxy Tab S6 Lite LTE (2020) Oxford Grey 64GB
- 15.gen! Intel Core ULTRA 9 285K (24mag!) +16-32GB DDR5 RAM +hűtött VRM-es Z890 lap! GAR/SZÁMLA!
- Eladó Sony FE 3.5-5.6/28-70 OSS objektív
- HIBÁTLAN iPhone 15 128GB Yellow-1 ÉV GARANCIA - Kártyafüggetlen, MS4489, 100% Akksi
- Macbook Air M2 15" 8GB 256GB 100%
- 262 - Lenovo LOQ (17IRX10) - Intel Core i7-14700HX, RTX 5070
- Használt számítógépek/merevlemezek számlával, garanciával! Ingyen Foxpost/PostaPont!
- 269 - Lenovo Yoga Pro 9 (16IAH10) - Intel Core U9 285H, RTX 5060 (multitouch)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
De azért köszönöm.
És te ezt képes vagy hallgatni anélkül, hogy 1 perc után inkább le akarnád tépni a füledet?
(én inkább azt választottam, hogy kilőttem a francba, egyébként még egy tákolmány is, amit összehoz)
, de "konkrétabb példa" csak ez volt, amit találtam. A kódhoz nem értek, próbáltam másolni párhuzamosan, meg értelmezni, most pedig működésre szeretném bírni.

Viszont a levelezést etc. kontaktformhoz mindenképp kell a honlapomnál, más út nincs.