PHP pomoc [e-mail form]

Wladimir90

Početnik
Poruka
19
Cao svima, ja sam potpuno novi korisnik Krstarica foruma, ali koliko vidim nije toliko lose.

Nego da odmah predjemo na stvar: Imam problema sa PHP-om, tacnije sa e-mail formom za moju kontakt stranu.

Ovo je kod:

za kontakt.php stranu
HTML:
<div id="form_responce_mail" style="display: none;"></div>
<div id="form_div">
<form id="email" name="email" action="sendmail.php" onsubmit="submit_form(this, 'mail', 'sendmail.php');">
<div><label for="name">Name</label>
<input type="text" class="inputbox" size="20" name="name" id="name"/></div><br />
<div><label for="email">Email</label>
<input type="text" class="inputbox" size="20" name="email" id="email" /></div><br />
<div><label for="subject">Subject</label>
<input type="text" class="inputbox" size="20" name="subject" id="subject" /></div><br />
<div><label for="msg">Message</label>
<input type="text" class="inputbox" size="20" name="msg" id="msg" /></div><br />
<div><input class="buttonbox" type="submit" value="Submit form" /></div>
</form>
</div>

Ovo je kod za sendmail.php stranu:
HTML:
<?php

$my_email = " - Email Address Removed for Security -";

if (isset($_POST['action']) && $_POST['action'] == "email"){

$VIRTUAL_REMOTE_HOST = gethostbyaddr( $_SERVER['REMOTE_ADDR'] );
if( $_SERVER['REMOTE_HOST'] ) { }
else {
$_SERVER['REMOTE_HOST'] = "NULL";
}
if( $VIRTUAL_REMOTE_HOST ) { }
else {
$VIRTUAL_REMOTE_HOST = "NULL";
}
}

$mailheader = "From: \"$_POST['name']\" <$_POST['email']>\r\n";
$mailbody = $_POST['msg'];
$mailbody .= "\r\n\r\n\r\n"."------ Technical Information --------\r\n\r\n"."The email has been sent by $_POST['name'] from remote host $_SERVER['REMOTE_HOST'] at ".date("Y-m-d H:i:s")." --> specified hostname $VIRTUAL_REMOTE_HOST. \r\nThe sender's IP Address is $_SERVER['REMOTE_ADDR'] and the sender's \r\nUser-Agent string is $_SERVER['HTTP_USER_AGENT'].";

$email_sent = @mail($my_email, $_POST['subject'], $mailbody, $mailheader);

if ($email_sent) {
echo "Email has been successfully sent";
}
else {
echo "Error occured";
}

}
?>

Ja mislim da je kod u redu, ali jedan covek sa drugog foruma mi je rekao da je vazno kako uploadije fajl na Web (spominjao je ASCII)... Koristim SmartFTP za upload...

Hvala unapred,
Wlada
 
e zbog ovakvih cu da popizdim....
dragi Wladimire, zar ti mislis da mi ovde gledamo u pasulj kada neko dodje i kaze: "Ej, meni ne radi skripta". Ili mozda moram da bacam bob da bih video kakve greske dobijas? Ili si toliko lenj i samoziv da ocekujes da ti drugi urade skriptu? E, ovde nije tako....

i da, tvoj problem ima vrlo lako i efikasno resenje, ali ti ga necu dati zbog tvog stava prema forumu...
 
Obersturmfuehrer:
e zbog ovakvih cu da popizdim....
dragi Wladimire, zar ti mislis da mi ovde gledamo u pasulj kada neko dodje i kaze: "Ej, meni ne radi skripta". Ili mozda moram da bacam bob da bih video kakve greske dobijas? Ili si toliko lenj i samoziv da ocekujes da ti drugi urade skriptu? E, ovde nije tako....

i da, tvoj problem ima vrlo lako i efikasno resenje, ali ti ga necu dati zbog tvog stava prema forumu...
Pa izvini molim te, malo strpljenja. Nisam tebi jos uvek napisao poruku.

Vidis, kada napravim form koji moze da se vidi u prvom HTML codu i kada kliknem Submit Browser ode na sendmail.php ali mi ne posalje poruku i napise u naslovu stranice proces rada, mislim kao e-mail=to i to, name=to it to, odprilike izgleda ovako.

http://mojastranice.com/sendmail.php?name=Wladimir;e-mail=name@domain.com itd.

Ne izbaci mi nikakvu poruku za gresku (Error occupied)... eto sta ne radi.
 
problem ti je u prosledjivanju parametara....
dakle, stavi nemoj ceo mail header da guras u jednu promenljivu, vec kazi da je

$email = $_POST['email];
$subjecy = $_POST['subject'];

itd...

takodje, u formi koju si napisao dovoljno ti je da samo dodas method="post", bez ostalih kerefeka, (normalno action="mail.php") ostaje....
 
nego, probaj ti ovo, pa prilagodi....
Kod:
<?php

$email = $_POST['email'];
$msg =  $_POST['msg'];
$subject = $_POST['subject'];
$name = $_POST['name'];

$chk = @mail($email, 'sub', $msg, "From: $name);

if ($chk)
{
 echo "OK";
}
else
{
 echo "NE VALJA";
}

?>

ovo ce da radi sa tvojom skriptom....
 
Obersturmfuehrer:
Kod:
$email = $_POST['email'];
$msg =  $_POST['msg'];
$subject = $_POST['subject'];
$name = $_POST['name'];

$chk = @mail($email, 'sub', $msg, "From: $name);

E moj Oberst! Lepo ucis decu! Ajde daj mi link gde si postavio ovakvu sendmail formu, pa da malo spamujem preko tvog sajta. Jesi li ti cuo za addslashes i kako bez njega posetioci sajta mogu slati poruke sa tvoje sendmail forme drugima u tvoje ime?
 
Gill Bates:
E moj Oberst! Lepo ucis decu! Ajde daj mi link gde si postavio ovakvu sendmail formu, pa da malo spamujem preko tvog sajta. Jesi li ti cuo za addslashes i kako bez njega posetioci sajta mogu slati poruke sa tvoje sendmail forme drugima u tvoje ime?
Nisam cuo za taj addslashes, ali sam znao da oni mogu da salju mailove na moje ime.
 

Back
Top