Ciao ragazzi..
premessa: classico niubbo di php.
allora, vi spiego il mio problema:
dal cd di php di html.it , ho prelevato lo script n° 41 che è un form mail (molto carino a dir la verità)
l'unico problema è che le mail non arrivano a destinazione.
Cioè il lo script le indica come inviate, ma in realtà non arrivano...
Nel codice ci sono anche delle variabile che "parlano" di orari del server: infatti era segnata impostata a 6,e quando inviavo la mial diceva che era stato inviata fra sei ore.
Allora ho impostato a 0 il valore, ma non cambia nulla, anche se la mail dice che è stata spedita all'ora attuale...
Io uso winzozz xp, ma cmq i file php vengono uploadati su server web linux..
vi posto i codici dei due file da me modificati , potreste dare un'occhiata?
sfiga vuole che è roba che devo consegnare stasera ad un cliente..altrimenti so' cavoli
![]()
Grazie a chi mi vorrà aiutare!!
![]()
ECCO I CODE:
<FORM ACTION="mail.php" METHOD="post">
* = Campi richiesti
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0">
<TR>
<TD VALIGN="TOP" HEIGHT="" WIDTH="200" BGCOLOR="#FFFFFF">
<span class="contenuto">Nome Azienda:*</span>
</TD>
<TD VALIGN="TOP" HEIGHT="" WIDTH="0" BGCOLOR="#FFFFFF">
<input type="text" name="FirstName">
</TD>
</TR>
</TABLE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0">
<TR>
<TD VALIGN="TOP" HEIGHT="" WIDTH="200" BGCOLOR="#FFFFFF">
<span class="contenuto">referente:*</span> </TD>
<TD VALIGN="TOP" HEIGHT="" WIDTH="0" BGCOLOR="#FFFFFF">
<input type="text" name="SecondName">
</TD>
</TR>
</TABLE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0">
<TR>
<TD VALIGN="TOP" HEIGHT="" WIDTH="200" BGCOLOR="#FFFFFF">
<span class="contenuto">Richiesta:</span></TD>
<TD VALIGN="TOP" HEIGHT="" WIDTH="0" BGCOLOR="#FFFFFF">
<textarea cols="40" rows="5" name="Comments"></textarea>
</TD>
</TR>
</TABLE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0">
<TR>
<TD VALIGN="TOP" HEIGHT="" WIDTH="200" BGCOLOR="#FFFFFF">
<span class="contenuto">Newsletter:</span>
</TD>
<TD VALIGN="TOP" HEIGHT="" WIDTH="0" BGCOLOR="#FFFFFF">
<input type ="checkbox" name="Newsletter" checked>
</TD>
</TR>
</TABLE>
<TABLE width="492" BORDER="0" CELLPADDING="0" CELLSPACING="0">
<TR>
<TD VALIGN="TOP" HEIGHT="" WIDTH="200" BGCOLOR="#FFFFFF">
</TD>
<TD VALIGN="TOP" HEIGHT="" WIDTH="" BGCOLOR="#FFFFFF">
<input type="submit" value="Invia Richiesta"> <input type="reset" value=" Elimina Dati Inseriti">
</TD>
</TR>
</TABLE>
</FORM>Codice PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Richiesta Informazioni</TITLE>
</HEAD>
<BODY>
<?
if($FirstName == "") //MAKE SURE VARIABLE E.G $FIRSTNAME MATCHES THE ONE ON YOUR FORM
{
echo("[B]Nome Azienda:[/B] <FONT COLOR=red>Campo Obbligatorio</FONT> <A HREF=form.php>Torna Indietro</A>
");
$required = 0; //IF FIELD IS LEFT BLANK, THE ABOVE ERROR MESSAGE WILL COME UP AND THE FORM WILL NOT BE SUBMITTED
}
else
{
echo("[B]Nome Azienda:[/B] $FirstName
");
$required = 1; //IF THE FIELD IS FILLED IN, THE FORM WILL BE SUBMITTED WITHOUT ANY ERRORS
}
if($SecondName == "")
{
echo("[B]Referente:[/B] <FONT COLOR=red>Campo Obbligatorio</FONT> <A HREF=form.php>Torna Indietro</A>
");
$required = 0;
}
else
{
echo("[B]Referente:[/B] $SecondName
");
$required = 1;
}
if($Newsletter == "")
{
echo("[B]Newsletter:[/B] No
");
}
else
{
echo("[B]Newsletter:[/B] Yes
");
}
if($Comments == "")
{
echo("[B]Comments:[/B] None
");
}
else
{
echo("[B]Comments:[/B] $Comments
");
}
$email = "First Name:\t$FirstName\nSecond Name:\t$SecondName\nNewsletter:\t$Newsletter\nComments:\t$Comments\n\nIP:\t$REMOTE_ADDR\nBrowser:\t$HTTP_USER_AGENT\n\n"; //THE FORMAT OF WHICH THE DATA WILL BE SENT TO THE E-MAIL
$to = "mia@email.it"; //THE E-MAIL ADDRESS YOU WANT THE FORM DATA TO BE SENT TO
$subject = "info dal sito"; //THE SUBJECT FIELD OF THE E-MAIL
$mailheaders = "From: $FirstName $SecondName <> \n"; //THE FROM FIELD OF THE E-MAIL
$mailheaders .= "Reply-To: [email]mia@email.it[/email]\n\n"; //THE REPLY TO FIELD OF THE E-MAIL
$serverdiff = "0"; //--->PRIMA ERA IMPOSTATO A 6
$adjusttime = ($serverdiff * 60 * 60); //HOUR ADJUSTMENT
$time = date("l, jS F, Y - g:i A",time() + $adjusttime); //FORMAT
if ($required == 1) //THIS IS USED FOR REQUIRED FIELDS, IF USER FILLS IN A REQUIRED FIELD (1) THE INFORMATION WILL BE SHOWN, HOWEVER IF THE USER DOES NOT (0) THE ERROR MESSAGE WILL BE SHOWN AND THE FORM WILL NOT BE SUBMITTED. IF ALL REQUIRED FIELDS ARE FILLED IN, THE FORM WILL BE SUBMITTED CORRECTLY
mail($to, $subject, $email, $mailheaders); //MESSAGE SEND
echo("[B]Se non sono stati trovati campi obbligatori non compilati, la tua richiesta è stata inoltrata a <FONT COLOR=red>$to</FONT> in data <FONT COLOR=red>$time GMT</FONT>. Grazie per averci contattato, <FONT COLOR=red> $SecondName</FONT>.[/B]"); //THE MESSAGE TO THE USER WHEN THE FORM IS SUBMITTED
?>
[url="index.htm"]Torna Indietro[/url]
<?
$serverdiff = "0"; //DIFFERENCE BETWEEN SERVER TIME AND LOCAL TIME -- anche qui era impostato 6
$adjusttime = ($serverdiff * 60 * 60); //HOUR ADJUSTMENT
$time = date("l, jS F, Y - g:i A",time() + $adjusttime); //FORMAT
$ip = $REMOTE_ADDR;
//$remote_addr is PHP variable to get ip address
$referer = $HTTP_REFERER;
//$http_referer is PHP variable to get referer
$browser = $HTTP_USER_AGENT;
//$http_user_agent is PHP variable for browser
$fp = fopen("log.html", "a");
//use the fopen() function
fputs($fp, "[b]Time:[/b] $time
[b]IP:[/b] $ip
[b]Referer:[/b] $referer
[b]Browser:[/b] $browser
");
//using the fputs() function
fclose($fp);
//closing the function
?>
</BODY>
</HTML>