Laczy75 Posted April 24, 2008 Posted April 24, 2008 Üdv! a következõ problémám van. Van egy jól mûködõ php-s kódom amit próbaképp felraktam az oldalamra onnan megy rendesen a mail, elküldi a címzettnek (ez fix) és a feladónak a visszaigazolást, viszont a céges oldalon nem akarja elküldeni azt dobja vissza hogy hiányos adat, pedig teljesen ugyan azt adom meg mint a tesztlapomon, ez valami php beállítási hiba lehet a szerveren, de vajon mi? itt a kód: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>kapcsolat</title> <link rel="stylesheet" href="eszk/css/bsl.css" type="text/css"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1250"> <?php $recipientname = "Weblapról"; $recipientemail = "errekapom@levelet.jo"; $subject = "Üzenet a weben keresztûl"; $autoresponse = "yes"; $autosubject = "Az utomatikus email tárgya!"; $automessage = "Ez egy megerosítés, az e-mail sikeresen kézbesítve lett."; $thanks = "Köszönöm, az üzenet sikeresen továbbítva lett.<br>Hamarsoan válaszolok.<br>"; ?> <style type="text/css"><!-- td,body,input,textarea { font-size:12px; font-family:Verdana,Arial,Helvetica,sans-serif; color:#000000} --></style> </head> <body class="body1"> <table class="table" width="690" height="187%" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="100%" height="40" class="cimke">KAPCSOLAT</td> </tr> <tr> <td height="12"><div align="right"></div></td> </tr> <tr> <td class="szoveg_sk"> <table width="100%" height="145%"> <tr> <td height="334" valign="top"> <font face="Verdana,Arial,Helvetica" size="2"> <?php if($_POST['submitform']) { $Name = $HTTP_POST_VARS['Name']; $Email = $HTTP_POST_VARS['Email']; $Comments = $HTTP_POST_VARS['Comments']; // check required fields $dcheck = explode(",",$require); while(list($check) = each($dcheck)) { if(!$$dcheck[$check]) { $error .= "Hiányos adat: $dcheck[$check]<br>"; } } // check email address if ((!ereg(".+\@.+\..+", $Email)) || (!ereg("^[a-zA-Z0-9_@.-]+$", $Email))) { $error .= "Hibás email <br>"; } // display errors if($error) { ?> <b>Hiba</b><br> <?php echo $error; ?><br> <a href="#" onClick="history.go(-1)">Vissza</a> <?php } else { $browser = $HTTP_USER_AGENT; $ip = $REMOTE_ADDR; // format message $message = "A következo üzenet érkezett $recipientname: Név: $Name Email: $Email Üzenet: $Comments ----------------------------- Böngészo: $browser Felhasználó IP: $ip"; // send mail and print success message mail($recipientemail,"$subject","$message","From: $Name <$Email>"); if($autoresponse == "yes") { $autosubject = stripslashes($autosubject); $automessage = stripslashes($automessage); mail($Email,"$autosubject","$automessage","From: $recipientname <$recipientemail>"); } echo "$thanks"; } } else { ?></font> <form name="contactform" action="<?php echo $PHP_SELF; ?>" method="post"> <font face="Verdana,Arial,Helvetica" size="2"><input type="hidden" name="require" value="Name,Email,Comments"></font> <table align="center"> <tr> <td colspan="2" align="center"></td> </tr> <tr> <td width="62" align="right" valign="top">Név:</td> <td width="526" valign="top"><input name="Name" size="50"></td> </tr> <tr> <td valign="top" align="right">E-mail:</td> <td valign="top"><input name="Email" size="50"></td> </tr> <tr> <td height="108" align="right" valign="top">Üzenet:</td> <td valign="top"><textarea name="Comments" rows="6" cols="80"></textarea></td> </tr> <tr> <td height="24" colspan="2" align="center"><input type="submit" value="Mehet" name="submitform"> <input type="reset" value="Törlés" name="reset"> </td> </tr> </table> <font face="Verdana,Arial,Helvetica" size="2"><br></font> </form> <font face="Verdana,Arial,Helvetica" size="2"></font><?php } ?> </td> </tr> </table> </td> </tr> </table> </body> </html> Van tipp?
payskin Posted April 24, 2008 Posted April 24, 2008 Mi a hibaüzenet és mivel van kapcsolatban? Melyik művelettel?
szpetya Posted April 24, 2008 Posted April 24, 2008 Itt mit explode-olsz fel? $dcheck = explode(",",$require); Annak a $require-nek sehol sincsen átadva érték vagy lehet csak én nem látom... Szerintem ezért dob egyfolytában "hiányos adat" hibát. Üdv P
Laczy75 Posted April 25, 2008 Author Posted April 25, 2008 Mi a hibaüzenet és mivel van kapcsolatban? Melyik művelettel? Ha a mehet gombra kattintok, azaz ha küldené a mailt akkor: Hiba Hiányos adat: Vissza semmi többet nem ad, de mint írtam teljesen ugyanez a kód csak egy másik szerveren tökéletesen működik. Ezért gyanakszom arra, hogy a szerveren kellene esetleg valamit beállítani, de nem tudom mit, mert amúgy a mail függvény engedélyezve van.
szpetya Posted April 25, 2008 Posted April 25, 2008 Leírtam hogy mi a hiba. A $require tartalma üres ezáltal amit fel explode-olsz az is üres ezáltal a $check értéke is üres. Üdv p
Laczy75 Posted May 7, 2008 Author Posted May 7, 2008 Leírtam hogy mi a hiba. A $require tartalma üres ezáltal amit fel explode-olsz az is üres ezáltal a $check értéke is üres. Üdv p Üdv! Bocs, de nem én írtam én csak össze ollóztam, nem igazán értek (még) minden funkciót. DE azt láttam, kipróbáltam, hogy másik szerveren ment gond nélkül. Közben kiderült hogy amelyiken nem megy azon nincs sendmail, emiatt lehet rossz. Viszont arra a gépre nem akarnak tenni levelezõt, de egy másikon van. Így felmerül a kérdés át lehet irányítani php-ban hogy a 10.1.2.3 as gépen lévõ programmal és regisztrált felhasználó jogosultságával küldje a mailt. Köszi
[OP]Destroy-man Posted June 20, 2010 Posted June 20, 2010 Csináltam egy kicsi php fájlt, ami egy HTML formátumu e-mailt küld el egy fix címre. A problémám az, hogy nem tartja meg a HTML formázását küldéskor. A levelező programok egy lebutotott HTML-t használnak, vagy maga a mail() fügvény csak ennyire képes, esetleg én rontok el valamit? A hibák: - Nem jeleniti meg a háttérképet (egy sima szinátmenet a levél tetején) - A szöveget egy hivatkozott kép alatt jeleníti meg, és nem ott ahol szeretném (pozicionált div) Más, kisebb probléma: a googlenek külön engedélyezni kell a kép megjelenítését. Ki lehet ezt valahogy játszani? Pl. a képet csatolmányként küldöm az e-maillel, és arra hivatkozok?
payskin Posted June 21, 2010 Posted June 21, 2010 A levelezõprogramok HTML-értelmezõje kisebb tragédia, a Google és az Outlook kiemelkedõen rossz. A HTML levél küldésnek megvan a saját irodalma, keress rá, meg fogsz döbbenni, hogy milyen kódot kell írni ahhoz, hogy valami hasonló jelenjen meg, mint amit szerettél volna. Például a GMail valamit változtatott pár hete a HTML motorján, azóta fura fehér csíkok vannak a céges hírlevelünkben, gõzöm nincs, miért.
[OP]Destroy-man Posted June 22, 2010 Posted June 22, 2010 Egy kicsit átszerkesztettem a HTML fájlt - pozicionált divet lecseréltem egy táblára, illetve a <style>-t is töröltem, helyette direktben kapják meg a stílust az elemek, így most jó. A PHP mail()-t lecseréltem a phpmailer()-re, így már googleban is megjelennek a képek, mindenféle kérdezés nélkül. Egyetlen gondom van még, az pedig a lap háttérképe. Azt az istennek nem akarja megjeleníteni. Talán nincs rá lehetõség?
[OP]Destroy-man Posted June 22, 2010 Posted June 22, 2010 Kicsit megerõszakoltam a kódot, így most jó. Mindössze annyit csináltam, hogy képként illesztettem be az egyébként háttérnek szánt képet, annyi megszorítással, hogy fix szélességû lett így a levél, ugyanis 1:1-ben tud csak képet nagyítani a HTML levél, torzításos módszerrel nem.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now