Hirdetés
Köszönjük a sok biztatást, támogatást! Utolsó pillanat a féláras hirdetésfeladásra, előfizetésre!
Új hozzászólás Aktív témák
-
VladimirR
nagyúr
válasz
huskybusky #1263 üzenetére
itt lathato:
if (mail("email@címem.hu",$targy,$szoveg)) { echo 'SIKERESEN ELKÜLDTÜK AZ ÜZENETET';}
else {echo 'HŰHA ! EZ AZ ÜZENET MOST NEM LETT ELKÜLDVE...';}
}a mail fuggveny viszzateresi ertekebol megmondhato, hogy sikerult-e elkuldeni a levelet (siker eseten true, egyebkent false), s ennek megfeleloen irtahatsz ki uzenetet
-
vakondka
őstag
válasz
huskybusky #1258 üzenetére
Ha valóban UTF-8 ként mentetted el akkor ez jó lesz...benne van minden, remélem
<?php header("Content-type: text/html; charset=utf-8"); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> mail küldés </title></head>
<body>
<?phpif (count($_POST)==0) {
echo '<form action="mail.php" method="post">
<p>Név</p>
<p>
<input name="name" type="text" value="" maxlength="30">
</p>
<p> E-mail cím</p>
<p>
<input name="email" type="text" value="" maxlength="40">
</p>
<p> Üzenet</p>
<p>
<textarea name="message" cols="40" rows="8"></textarea>
</p>
<p>
<input name="submit" type="submit" value="Küldés">
</p>
</form>';}
else {
$targy = "Levelem tárgya";
$szoveg = "A levél feladója: " . $_POST['name']."\n";
$szoveg .= "A küldő email címe: " . $_POST['email']. "\n";
$szoveg .= "Üzenet: " . $_POST['message'];
if (mail("email@címem.hu",$targy,$szoveg)) { echo 'SIKERESEN ELKÜLDTÜK AZ ÜZENETET';}
else {echo 'HŰHA ! EZ AZ ÜZENET MOST NEM LETT ELKÜLDVE...';}
}
?></body>
</html> -
vakondka
őstag
válasz
huskybusky #1258 üzenetére
Ha valóban utf-8 ként mentetted el, akkor ez segíthet, ha ez az első sor a fájlban:
<?php header("Content-type: text/html; charset=utf-8"); ?>nem lehet előtte egy üres szóköz, vagy sortörés sem !
-
Panther
HÁZIGAZDA
válasz
huskybusky #1258 üzenetére
Valószínűleg UTF8-ként mentetted el ezt az egy fájlt, pedig amúgy nem ezzel a kódolással dolgozol. (Nem követem az elejétől a problémát, csak benéztem, szóval lehet hogy hülyeséget írok...)
-
vakondka
őstag
válasz
huskybusky #1243 üzenetére
Tehát az űrlapod egy külön fájlban van és azzal hívod meg a mail.php fájlt amiben a php kód szerepel ? Vagy csak magában elindítottad a php-t ?
legyen ez a küldő űrlap:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>E-mail küldés</title></head>
<body>
<form action="mail.php" method="post">
<p>Név</p>
<p>
<input name="name" type="text" value="" maxlength="30">
</p>
<p> E-mail cím</p>
<p>
<input name="email" type="text" value="" maxlength="40">
</p>
<p> Üzenet</p>
<p>
<textarea name="message" cols="40" rows="8"></textarea>
</p>
<p>
<input name="submit" type="submit" value="Küldés">
</p>
</form></body>
</html>hibakeresésére (hogy átjönnek-e a kitöltött űrlap adatai) használd ezt ideiglenesen mail.php fájlként:
<?php
print_r($_POST);
?>ez ki kell hogy írja azokat az adatokat, amit elküldtél az űrlappal.
-
vakondka
őstag
válasz
huskybusky #1236 üzenetére
Háát igen, igaza van Louloudaki-nak
Én ezt a hibát észre sem vettem hogy más változókat használsz az értékadásnál és más változónevek vannak a levél eküldésére szolgáló mail() függvény paramétereiként megadva...
Maradjunk az első verziónál:
<?php
$targy = "Levelem tárgya";
$szoveg = "A levél feladója: " . $_POST['name']."\n";
$szoveg .= "A küldő email címe: " . $_POST['email']. "\n";
$szoveg .= "Üzenet: " . $_POST['message'];
mail("email@címem.hu",$targy,$szoveg);
?>ugye ezzel csak az volt a gond, hogy 2db aposztróf volt az email@címem.hu előtt és mögötte is ahelyett, hogy 1-1 idézőjel lett volna...csak ez a fórumban nem látszik...viszont kódszerkesztőben, ami kezeli a PHP-t azonnal látszik a kódszínezés miatt a hiba.
Érdemes lenne beszerezni egy ingyenes, vagy fizetős kódszerkesztőt.
Pl: Notepad++, Editplus, Php Coder, PHP Expert Editor, Zend Studio, stb.... -
Louloudaki
aktív tag
válasz
huskybusky #1236 üzenetére
nem tudom, hogy tényleg úgy írtad-e a kódban, ahogy itt:
$targy = "Levelem tárgya";
$nev = "A levél feladója: " . $_POST['name']."\n";
$email .= "A küldő email címe: " . $_POST['email']. "\n";
$uzenet .= "Üzenet: " . $_POST['message'];
mail(''email@címem.hu'',"Levelem tárgya",$name.$email.$message);de ha a magyar nevű $nev a feladó, a $uzenet az üzi, akkor a mail()-ben honnan veszed az angol nevű $name és $message változókat, mikor azok nem is léteznek, tehát értékük sincs, amit elküldhetnél? rugalmas a php, de ennyire mégse.
-
vakondka
őstag
válasz
huskybusky #1231 üzenetére
a 6. sorban van egy elírás
két aposztróf az 1-1 idézőjel helyett<?php
$targy = "Levelem tárgya";
$nev = "A levél feladója: " . $_POST['name']."\n";
$email .= "A küldő email címe: " . $_POST['email']. "\n";
$uzenet .= "Üzenet: " . $_POST['message'];
mail("email@címem.hu","Levelem tárgya",$name.$email.$message); -
vakondka
őstag
válasz
huskybusky #1229 üzenetére
ezzel amit írtál az a fő gond, hogy:
a mail küldés szintaxisa: mail("emailcim@ahovaküldöd.hu","levél tárgya","üzenet");
(ez persze bővülhet, illetve az idézőjelek és szöveg helyett lehet változónév, tehát $valami)Ha szöveget össze szeretnél fűzni, akkor annak a jele a pont, de te vesszőket írtál:
mail(''email@címem.hu'',$name,$email,$message,);A vesszők paraméter elválasztásra szolgálnak és az utolsó paraméter után nem kell vessző
és ne hagyd ki a levél tárgyát sem, vagy legalább egy pár idézőjelet írj a helyére ha nem akarsz tárgyat (persze vesszővel elválasztva)tehát így talán jó lett volna (ha fix a tárgy):
mail(''email@címem.hu'',"Levelem tárgya",$name.$email.$message);a \n eket azért írtam a példámba, mert ami utána van az új sorba kerül,
gondolom ezt szeretnéd.... -
vakondka
őstag
válasz
huskybusky #1227 üzenetére
Elég nehéz kitalálni, hogy mi lenne a program célja eredetileg...
Össze szeretnéd fűzni az Ember nevét, email címét és az üzenetet és ezt szeretnéd megkapni egy e-mailben ?
Mi legyen a levél tárgya ? Ez fix mindig ugyanaz lesz? ...mert nem adtad meg...Próbáld meg ezt:
<?php
$targy = "Levelem tárgya";
$szoveg = "A levél feladója: " . $_POST['name']."\n";
$szoveg .= "A küldő email címe: " . $_POST['email']. "\n";
$szoveg .= "Üzenet: " . $_POST['message'];
mail(''email@címem.hu'',$targy,$szoveg);
?>
Új hozzászólás Aktív témák
- HP Zbook Firefly 15 G8 - i7-1165G7/24GB/512GB-/W15"/W10 Pro/ ÁFÁ-s
- Lenovo ThinkPad P16s AMD Gen2 R5 7540U / 32GB RAM / 1TB SSD / FHD Touch ÁFÁ-s
- Samsung Galaxy A52s 5G 128GB 6GB RAM Dual (A528) Mobiltelefon
- Ohh Lenovo ThinkPad P15 G2 Tervező Vágó Laptop -75% 15,6" i5-11500H 32/1TB RTX A2000 4GB /1 Millió/
- Uhh Lenovo ThinkPad P15 G2 Tervező Vágó Laptop -75% 15,6" i5-11500H 16/1TB RTX A2000 4GB /1 Millió/
- Olcsó Gamer PC-Számítógép! Csere-Beszámítás! Xeon 5650X / GTX 1650 / 24GB DDR3 / 250SSD+500HDD
- Tablet felvásárlás! Samsung Galaxy Tab S10+, Samsung Galaxy Tab S10 Ultra, Samsung Galaxy Tab S10 FE
- GYÖNYÖRŰ iPhone 13 mini 256GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3037, 96% Akkumulátor
- DELL Precision 5560 i7-11850H 32GB 1000GB T1200 FHD+ 1 év garancia
- DELL PowerEdge R730xd 16LFF 160TB+400GB 2U rack - 2xE5-2683v4 (16c/32t),256GB RAM,2x10G NET,HBA330
Állásajánlatok
Cég: FOTC
Város: Budapest