ugrás a tartalomhoz

Milyen hiba, vagy esetleg kód hiányzhat a követekező mail.php -ből?

fulton · 2012. Feb. 25. (Szo), 14.48
Új szolgáltatóhoz kerül a weblapom, de utólag megtudtam itt a "hagyományos email küldő php" nem fog működni. Csak SMTP hitelesítéssel oldaható meg:S
(Azt szeretném elérni hogy az oldalamba beágyazott lapon szereplő email küldő php segítségével, az oldalra érkező látogatók gyorsba üzenetet tudjanak nekem küldni)

Namármost kaptam tőlük egy segédletet, ami alapján egy nagyon egyszerű mail.php létrehoztam de nem történt semmi miután az új tárhelyen futattam. Szerintetek mi lehet a baj?

a fájl amit kaptam:
http://data.hu/get/4773599/sunweb_smtp.rtf

és a szerkesztett
Mail.php:


<?
$cimzett = "normalize##kukac##freemail.hu";
$targy = "Szia János!";
$tartalom = "Arra gondoltam, hogy búvárkodjunk. Üdv, Kata";
/*mail($cimzett, $targy, $tartalom)*/;

require_once "Mail.php";
$smtp = Mail::factory('smtp', array(
'host' => 'mail.sunweb.hu',
'auth' => true,
'username' => 'usernevemet ide beirtam',
'password' => 'jelszavamat ide beirtam'
));
$sentmail = $smtp->send($cimzett, array(
'From' => 'Szabó Lilla <lilla.szabo##kukac##abcd.hu>',
'To' => $cimzett,
'Subject' => $targy
), $tartalom);
?>
 
1

Mail.php duplán?

H.Z. v2 · 2012. Feb. 25. (Szo), 15.01
Nem teljesen világos: a szolgáltatódtól kaptál egy Mail.php-t, ami definiálná a Mail nevű osztályt és neked is van egy saját Mail.php-d, ami require_once segítségével betölti önmagát?
Így első ránézésre azt javasolnám, hogy a saját Mail.php-t kereszteld át valami másra és ha úgy sem működik, akkor kezdj keresgélni!
Illetve ha nem ez a gond, akkor esetleg jelenthet még problémát a feladó: lehet, hogy a szolgáltatód csak olyan feladót engedélyez, ami a saját "hatáskörébe" tartozik, fiktív/hamisított feladót nem.
4

re

fulton · 2012. Feb. 25. (Szo), 15.39
.
2

re

fulton · 2012. Feb. 25. (Szo), 15.14
Nem, kaptam egy docot, (amit belinkeltem), abban szerepelt egy példa miszerint a sima mail() fügvénnyel levelet küldeni itt nem lehet, azt át kell alakítani....és akkor leirjak hogyan kell átalakítani konkrét példában, lényegében azt átformálva rám (felhasz. jelsz) mentettem el a Mail.php -t. Majd felmásoltam a serverre, és futattam böngészőből. De nem küldte el az üzenetet.
3

-

H.Z. v2 · 2012. Feb. 25. (Szo), 15.27
--- prog.hu-n látom, már megoldódott ---
5

re

fulton · 2012. Feb. 25. (Szo), 15.39
Igazad volt, az volt a baja:DD Köszönöm:)

már csak be kellene építeni egy email küldőbe. Ami nekem működött és tökéletes volt az a lenti kód. Ezt most értelem szerűen átalakítottam, de megint a "fal", nem megy..:S szerinted mi lehet a baja?


Config.php
-------
<?php

// Ahova megy az email
$sendto_email = "tárhelyes email fiókom";


// Beállítások

// Email ellenõrzés
$checkdomain = "yes";
// Beállítások
$lang_title = "Üzenet sikeresen elküldve";
$lang_notice = "";
$lang_name = "Név: ";
$lang_youremail = "Email: ";
$lang_subject = "Tárgy: ";
$lang_message = "Üzenet";
$lang_submit = "Üzenet Küldése";
// Hiba üzenetek
$lang_error = "Hiba:";
$lang_noname = "Nem lett kitöltve a Név mezõ !";
$lang_noemail = "Nem lett kitöltve az Email mezõ !";
$lang_nosubject = "Nem lett kitöltve a Tárgy mezõ !";
$lang_nomessage = "Nem lett kitöltve a Üzenet mezõ !";
$lang_invalidemail = "Nem megfelelõ Emailcím !";
// Küldés
$lang_sent = "Az email a következõ adatokkal lett elküldve:";

// Adatok dátum, ip cim
$date = date("l d F Y");
$time = date("g:i:s a");
$ip = $_SERVER['REMOTE_ADDR'];
// Form
$input_width = "300px";
$title_align = "left";
$title_css = "font-weight: normal; font-size: 120%;";
$title_css = "font-weight: normal; font-size: 12pt;";
// Hiba üznet színe
$error_colour = "red";
?>
-------

Mail.php
----

<?php
extract($_POST);
if (!file_exists("config.php"))
{
$host = $_SERVER[HTTP_HOST ];
$path = pathinfo($_SERVER['PHP_SELF']);
$file_path = $path['dirname'];
print "<h1>Hiba a script futása közben !</h1>
<p>Hiba lépett fel a script futása közben. Ellenőrizd a tárhely beáéllításokat !.</p>";
exit;
}
include "config.php";
if (empty ($senders_name))
{
$error = "1";
$info_error .= $lang_noname . "<br>";
}
if (empty ($senders_email))
{
$error = "1";
$info_error .= $lang_noemail . "<br>";
}
if (empty ($mail_subject))
{
$error = "1";
$info_error .= $lang_nosubject . "<br>";
}
if (empty ($mail_message))
{
$error = "1";
$info_error .= $lang_nomessage . "<br>";
}
if (!eregi("^[A-Z0-9._%-]+##kukac##[A-Z0-9._%-]+\.[A-Z]{2,6}$", $senders_email))
{
$error = "1";
$info_error .= $lang_invalidemail . "<br>";
}
if ($error == "1")
{
$info_notice = "<span style=\"color: " . $error_colour . "; font-weight: bold;\">" . $lang_error . "</span><br>";
if (empty ($submit))
{
$info_error = "";
$info_notice = $lang_notice;
}
function Random()
{
$chars = "ABCDEFGHJKLMNPQRSTUVWZYZ23456789";
srand((double)microtime()*1000000);
$i = 0;
$pass = '' ;
while ($i <= 5)
{
$num = rand() % 32;
$tmp = substr($chars, $num, 1);
$pass = $pass . $tmp;
$i++;
}
return $pass;
}
$random_code = Random();
$mail_message = stripslashes($mail_message);
print "<form name=\"kazaj\" method=\"post\" style=\"margin: 0;\" action=\"\">
<table border=\"0\" cellspacing=\"2\" cellpadding=\"2\">
<tr align=\"$title_align\" valign=\"top\">
</tr>
<tr align=\"left\" valign=\"top\">
<td colspan=\"2\">$info_notice$info_error</td>
</tr>
<tr valign=\"top\">
<td align=\"right\">$lang_name</td>
<td align=\"left\"><input name=\"senders_name\" type=\"text\" class=\"mailform_input\" id=\"senders_name\" style=\"width: $input_width;\" value=\"$senders_name\" maxlength=\"32\"></td>
</tr>
<tr valign=\"top\">
<td width=\"10\" align=\"right\">$lang_youremail</td>
<td align=\"left\"><input name=\"senders_email\" type=\"text\" class=\"mailform_input\" id=\"senders_email\" style=\"width: $input_width;\" value=\"$senders_email\" maxlength=\"40\"></td>
</tr>
<tr valign=\"top\">
<td width=\"10\" align=\"right\">$lang_subject</td>
<td align=\"left\"><input name=\"mail_subject\" type=\"text\" class=\"mailform_input\" id=\"mail_subject\" style=\"width: $input_width;\" value=\"$mail_subject\" maxlength=\"40\"></td>
</tr>
<tr valign=\"top\">
<td width=\"10\" align=\"right\">$lang_message
<br />

<br />

<br />

</td>
<td align=\"left\"><textarea name=\"mail_message\" cols=\"36\" rows=\"5\" style=\"width: $input_width;\" class=\"mailform_input\">$mail_message</textarea></td>
</tr>
<tr valign=\"top\">
<td colspan=\"2\" align=\"center\"><input name=\"randomness\" type=\"hidden\" id=\"randomness\" value=\"$random_code\">
&nbsp; &nbsp; <input name=\"submit\" type=\"submit\" id=\"submit\" value=\"$lang_submit\" class=\"mailform_button\"></td>

</tr>
</table>
</form>";
}
else
{
if ($checkdomain == "yes")
{
$sender_domain = substr($senders_email, (strpos($senders_email, '@')) +1);
$recipient_domain = substr($sendto_email, (strpos($sendto_email, '@')) +1);
if ($sender_domain == $recipient_domain)
{
print "Hibás domain ($sender_domain)";
exit;
}
}
// Megjelenő üzenet
$info_notice = $lang_sent;
$mail_message = stripslashes($mail_message);
$mail_message = htmlspecialchars($mail_message);
$senders_email = preg_replace("/[^a-zA-Z0-9s.@-_]/", "-", $senders_email);
$senders_name = preg_replace("/[^a-ö-zA-Z0-9s]/", " ", $senders_name);
$headers = "From: $senders_name <$senders_email> \r\n";
$headers .= "Üzeneted érkezett !\r\n";
$headers .= "-------------------------\r\n";
$headers .= "Adatok: \r\n";
$headers .= "Név: ";
$headers .= "$senders_name \r\n";
$headers .= "Email: ";
$headers .= "$senders_email \r\n";
$headers .= "Tárgy: ";
$headers .= "$mail_subject \r\n";
$headers .= "Dátum / Ip cím \r\n";
$headers .= "$date, $time, $ip \r\n";
$headers .= "-----------------------------------------------------\r\n";
$headers .= "Üzenet: ";

/*mail($sendto_email, $mail_subject, $mail_message, $headers)*/;

require_once "Mail.php";
$smtp = Mail::factory('smtp', array(
'host' => 'mail.sunweb.hu',
'auth' => true,
'username' => 'ide beirtam felhasználvó nevem',
'password' => 'jelszavam'
));
$sentmail = $smtp->send($sendto_email, array(
'From' => $lang_youremail,
'To' => $sendto_email,
'Subject' => $mail_subject), $mail_message);

print "<table border=\"0\" cellspacing=\"2\" cellpadding=\"2\">
<tr align=\"$title_align\" valign=\"top\">
<td colspan=\"2\"><span style=\"$title_css\">$lang_title</span></td>
</tr>
<tr align=\"$title_align\" valign=\"top\">
<td colspan=\"2\">$info_notice</td>
</tr>
<tr valign=\"top\">
<td width=\"100\" align=\"right\">$lang_name</td>
<td align=\"left\"><b>$senders_name</b></td>
</tr>
<tr valign=\"top\">
<td width=\"100\" align=\"right\">$lang_youremail</td>
<td align=\"left\"><b>$senders_email</b></td>
</tr>
<tr valign=\"top\">
<td width=\"100\" align=\"right\">$lang_subject</td>
<td align=\"left\"><b>$mail_subject</b></td>
</tr>
<tr valign=\"top\">
<td width=\"100\" align=\"right\">$lang_message</td>
<td align=\"left\"><b>$mail_message</b></td>
</tr>
</table>";
}
print $link;
?>
6

re

fulton · 2012. Feb. 25. (Szo), 22.16
Közben sikerült megoldanom:)
7

ígérd meg

Arnold Layne · 2012. Feb. 25. (Szo), 23.57
De azért igérd meg, hogy legközelebb használod a kódszinezőt. ;)
8

És még

Pepita · 2012. Feb. 26. (V), 01.19
azt is ígérd meg:
- Nem másolsz be teljes oldalnyi HTML kódot, ha PHP gondod van. Senki nem olvassa el, és nem szívesen segítenek neked, ha slendrián vagy.

Más.
Ha jól láttam, táblázattal "formázol", előfordul <b>, stb. tag: jócskán kéne még olvasgatnod szemantikus HTML témakörben. Lehet, ezzel együtt CSS "korrepetálás" is szükséges.

Ezekkel nem a kedvedet akartam elvenni, hanem segíteni a fejlődésben.
Közben sikerült megoldanom:)
Ennek örülök.