La cuestión es que tengo un sitio web trabajando, y dentro del sitio hay un formulario del que se mandan correos a mi cuenta. Todo iba bien hasta que un día deje de recibir correos y me puse en contacto con mi compañía de hosting y me dijeron que tenia que autenticar la cuenta de correo en el archivo PHP. Y obviamente como solo ofrecen el hospedaje y no el diseño pues no me dieron mas información.
Me mandaron un ejemplo de como debe quedar el archivo, pero no tengo ni idea de que cambiar en mi archivo.
Este es mi archivo PHP:
Código PHP:
<?xml version="1.0" encoding="utf-8"?>
<!--
Please read this information to learn how to set up the contact form integrated
into the template.
This readme file explains in details the meaning of the settings that can be
done in the fcContactFormConfiguration.xml configuration file.
It is recommended for you to use an XML editor to make changes to this file
because it’s less possible to make an error in the markup which can cause to
a not working contact form.
-->
<contactFormConfiguration>
<!--
An e-mail address which will be used to receive messages from your contact form.
You can specify several e-mail addresses separating them with a comma.
For example: [email protected], [email protected], [email protected]
-->
<emailTo>[email protected]</emailTo>
<!--
A server script type which will process sending e-mails. It depends on your
hosting and in the current version of the contact form it is allowed to use
two types: php (Apache, PHP Hosting); asp (IIS web server, ASP).
-->
<serverProcessorType>php</serverProcessorType>
<!--
A name of the script file which process sending e-mails on your server (without
extension). The name contact is used by default.
-->
<serverProcessorFileName>contact</serverProcessorFileName>
<!--
Set whether to validate only required fields (true/false). The default value is
true which means the not required fields of your contact form will not be validated.
For example if the e-mail field of your form is set as not required (imagine it)
the form will be processed even if the user types in an incorrect e-mail address.
-->
<validateRequiredOnly>false</validateRequiredOnly>
<!--
Set whether to submit the form when the Enter key is pressed even if the focus is
not on the Submit button (true/false).
-->
<submitFormOnEnter>false</submitFormOnEnter>
<!--
Text showing to the user when the form is submitted without any errors.
-->
<messageSentText>GRACIAS POR SU MENSAJE.</messageSentText>
<!--
Text showing in case the form is not submitted because of a server error.
-->
<messageSentFailedText>ERROR DE SERVIDOR, FAVOR DE TRATAR DE NUEVO EN UNOS MOMENTOS.</messageSentFailedText>
<!--
Text your visitor will see while waiting till the processing is over.
-->
<formProcessingText>PROCESANDO...</formProcessingText>
<!--
Your SMTP server (for ASP only).
-->
<smtpServer>localhost</smtpServer>
<!--
Your SMTP port (for ASP only).
-->
<smtpPort>25</smtpPort>
<!--
Set whether to send the message as a plain text (true) or as HTML (false).
-->
<plainText>false</plainText>
<!--
ID of the input field (in the structure XML file) to use for the “from: ”
or email to use instead (for example: [email protected]).
-->
<emailFromSource>2</emailFromSource>
<!--
Subject of the e-mails that will be sent through this contact form or ID of
the input field (in the structure XML file) to use for the “subject: ” label
in your e-mail client.
-->
<subjectSource>MENSAJE DESDE LA PAGINA</subjectSource>
<!--
Validation error messages that are showing to the user when the form fails to
validate. The form supports different types of validators. You can change the
text of the error messages the validators produce here.
You can use the {LABEL} keyword in these messages. It will replace it with the
label value of the field where an error occurs.
-->
<validationErrorMessages>
<!--
A required field is not filled in.
-->
<message type="fieldIsRequired">{LABEL} REQUERIDO.</message>
<!--
The specified e-mail address is incorrect.
-->
<message type="emailNotValid">{LABEL} - NO ES UN CORREO VALIDO.</message>
<!--
The specified number of characters in a field is less than a required minimum.
-->
<message type="minCharsLimitError">{LABEL} - THE SPECIFIED NUMBER OF CHARACTERS IN A FIELD IS LESS THAN A REQUIRED MINIMUM.</message>
<!--
The specified string does not match with the regular expression.
-->
<message type="reqExpError">{LABEL} - THE SPECIFIED STRING DOES NOT MATCH WITH THE REGULAR EXPRESSION.</message>
<!--
The specified number is greater than an acceptable biggest number for this field.
-->
<message type="biggerThanMaxError">{LABEL} - THE SPECIFIED NUMBER IS GREATER THAN AN ACCEPTABLE BIGGEST NUMBER FOR THIS FIELD.</message>
<!--
The specified number is lower than an acceptable lowest number for this field.
-->
<message type="lowerThanMinError">{LABEL} - THE SPECIFIED NUMBER IS LOWER THAN AN ACCEPTABLE LOWEST NUMBER FOR THIS FIELD.</message>
<!--
The data is not a number.
-->
<message type="notANumberError">{LABEL} - THE DATA IS NOT A NUMBER.</message>
<!--
The specified number must not be negative.
-->
<message type="negativeError">{LABEL} - THE SPECIFIED NUMBER MUST NOT BE NEGATIVE.</message>
<!--
The minimum number of variants is not selected
-->
<message type="minRequirementError">{LABEL} - THE MINIMUM NUMBER OF VARIANTS IS NOT SELECTED</message>
<!--
The number of variants selected exceeds the maximum
-->
<message type="maxRequirementError">{LABEL} - THE NUMBER OF VARIANTS SELECTED EXCEEDS THE MAXIMUM</message>
<!--
The fields that should be equal do not match
-->
<message type="shouldBeEqualError">{LABEL} - VALUES DO NOT MATCH</message>
<!--
The date has wrong format.
-->
<message type="dateIsNotValidError">{LABEL} - DATE HAS WRONG FORMAT</message>
</validationErrorMessages>
</contactFormConfiguration>
Código PHP:
<?php
//new function
$to = "[email protected]";
$nameto = "Nombre Destinatario";
$from = "[email protected]";
$namefrom = "Tu nombre";
$subject = "Correo desde php";
$message = "Prueba de correos desde php con OK HOSTING";
authSendEmail($from, $namefrom, $to, $nameto, $subject, $message);
?>
<?php
/* * * * * * * * * * * * * * SEND EMAIL FUNCTIONS * * * * * * * * * * * * * */
//Authenticate Send - 21st March 2005
//This will send an email using auth smtp and output a log array
//logArray - connection,
function authSendEmail($from, $namefrom, $to, $nameto, $subject, $message)
{
//SMTP + SERVER DETAILS
/* * * * CONFIGURATION START * * * */
$smtpServer = "mail.tudominio.com";
$port = "25";
$timeout = "30";
$username = "[email protected]";
$password = "tucontraseña";
$localhost = "localhost";
$newLine = "\r\n";
/* * * * CONFIGURATION END * * * * */
//Connect to the host on the specified port
$smtpConnect = fsockopen($smtpServer, $port, $errno, $errstr, $timeout);
$smtpResponse = fgets($smtpConnect, 515);
if(empty($smtpConnect))
{
$output = "Failed to connect: $smtpResponse";
return $output;
}
else
{
$logArray['connection'] = "Connected: $smtpResponse";
}
//Request Auth Login
fputs($smtpConnect,"AUTH LOGIN" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authrequest'] = "$smtpResponse";
//Send username
fputs($smtpConnect, base64_encode($username) . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authusername'] = "$smtpResponse";
//Send password
fputs($smtpConnect, base64_encode($password) . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authpassword'] = "$smtpResponse";
//Say Hello to SMTP
fputs($smtpConnect, "HELO $localhost" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['heloresponse'] = "$smtpResponse";
//Email From
fputs($smtpConnect, "MAIL FROM: $from" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['mailfromresponse'] = "$smtpResponse";
//Email To
fputs($smtpConnect, "RCPT TO: $to" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['mailtoresponse'] = "$smtpResponse";
//The Email
fputs($smtpConnect, "DATA" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['data1response'] = "$smtpResponse";
//Construct Headers
$headers = "MIME-Version: 1.0" . $newLine;
$headers .= "Content-type: text/html; charset=iso-8859-1" . $newLine;
$headers .= "To: $nameto <$to>" . $newLine;
$headers .= "From: $namefrom <$from>" . $newLine;
fputs($smtpConnect, "To: $to\nFrom: $from\nSubject: $subject\n$headers\n\n$message\n");
fputs($smtpConnect, "\r\n");
fputs($smtpConnect, ".");
fputs($smtpConnect, "\r\n");
$smtpResponse = fgets($smtpConnect, 515);
$logArray['data2response'] = "$smtpResponse";
// Say Bye to SMTP
fputs($smtpConnect,"QUIT" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['quitresponse'] = "$smtpResponse";
}
?>
Se los agradecere mucho. Gracias