I developed them, it's a form to apply for a job and I want them to attach their cv and send it to a corporate email but it bounces me off. These are my codes
First is the JS, then the php and the last one is the html When uploading them to the server and want to send them I get the error message
Notice: Undefined index: cv in /home/gdscogcq/public_html/postular.php on line 15
Invalid address: Could not access file: You must provide at least one recipient email address. Enter a message
$("#formpostula").submit(function(event){
event.preventDefault();
enviarcv();
});
function enviarcv(){
var datos = $("#formpostula").serialize();
$.ajax({
type: "post",
url:"postular.php",
data: datos,
success: function(texto){
if(texto=="exito"){
correcto();
}else{
phperror(texto);
}
}
})
}
function correcto(){
$("#exitoPostular").removeClass("d-none");
$("#errorPostular").addClass("d-none");
}
function phperror(texto){
$("#errorPostular").removeClass("d-none");
$("#errorPostular").html(texto);
}
<?php
error_reporting(E_ALL);
ini_set('display_errors',1);
//Declarando variables
$error='';
$nombre='';
$apellido='';
$dni='';
$email='';
$direccion=$_POST["direccion"];
$telefono='';
$mensaje='';
$archivo=$_FILES["cv"];
//Validando nombre
if(empty($_POST["nombre"])){
$error = 'Ingresa un nombre';
}else{
$nombre = $_POST["nombre"];
$nombre = filter_var($nombre, FILTER_SANITIZE_STRING);
$nombre = trim($nombre);
if($nombre==''){
$error = 'Apellido está vacio';
}
}
//Validando apellido
if(empty($_POST["apellido"])){
$error = 'Ingresa un apellido';
}else{
$apellido = $_POST["apellido"];
$apellido = filter_var($apellido, FILTER_SANITIZE_STRING);
$apellido = trim($apellido);
if($apellido==''){
$error = 'Apellido está vacio';
}
}
//Validando apellido
if(empty($_POST["dni"])){
$error = 'Ingresa tu número de DNI';
}else{
$dni = $_POST["dni"];
$dni = filter_var($dni, FILTER_SANITIZE_STRING);
$dni = trim($dni);
if($dni==''){
$error = 'DNI está vacio';
}
}
//Validando correo
if(empty($_POST["email"])){
$error = 'Ingresa un email';
}else{
$email = $_POST["email"];
$email = filter_var($email, FILTER_SANITIZE_STRING);
$email = trim($email);
if($email==''){
$error = 'Email está vacio';
}
}
//Validando correo
if(empty($_POST["telefono"])){
$error = 'Ingresa un Teléfono';
}else{
$telefono = $_POST["telefono"];
$telefono = filter_var($telefono, FILTER_SANITIZE_STRING);
$telefono = trim($telefono);
if($telefono==''){
$error = 'Teléfono está vacio</br>';
}
}
// Validando Descripcion
if(empty($_POST["mensaje"])){
$error = 'Ingresa un mensaje';
}else{
$mensaje = $_POST["mensaje"];
$mensaje = filter_var($mensaje, FILTER_SANITIZE_STRING);
$mensaje = trim($mensaje);
if($mensaje==''){
$error = 'Descripción está vacio';
}
}
include_once('php/class.phpmailer.php');
include_once('php/class.smtp.php');
include_once('php/class.pop3.php');
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Host = "mail.gds.com.pe";
$mail->Port = 465;
$mail->Username ='[email protected]';
$mail->Password = 'seleccion13579'; //Su password
$mail->AddAddress($email);
$mail->Subject = "Nuevo postulante de GDS";
$mail->Body = "Nombres: $nombre \n<br />".
"Apellidos: $apellido \n<br />".
"DNI: $dni \n<br />".
"Email: $email \n<br />".
"Dirección: $direccion \n<br />".
"Teléfono: $telefono \n<br />".
"Mensaje: $mensaje \n<br />";
$mail->AddAttachment($archivo['tmp_name'], $archivo['name']);
$mail->MsgHTML($mensaje);
//ENVIAR CORREO
if($mail->Send()){
echo'<script type="text/javascript">
alert("Enviado Correctamente");
window.location="http://gds.com.pe/postular.html"
</script>';
}else{
echo $error;
}
?>
<form class="row" id="formpostula" enctype="multipart/form-data" novalidate>
<div class="col-sm-6 p-1">
<input type="text" class="form-control bg-white-transparent form-control-lg text-white border border-white" id="nombre" name="nombre" placeholder="Nombres*">
</div>
<div class="col-sm-6 p-1">
<input type="text" class="form-control bg-white-transparent form-control-lg text-white border border-white" id="apellido" name="apellido" placeholder="Apellidos*">
</div>
<div class="col-sm-6 p-1">
<input type="text" class="form-control bg-white-transparent form-control-lg text-white border border-white" id="dni" name="dni" placeholder="DNI Nro.*">
</div>
<div class="col-sm-6 p-1">
<input type="email" class="form-control bg-white-transparent form-control-lg text-white border border-white" id="email" name="email" placeholder="Email*">
</div>
<div class="col-sm-12 p-1">
<input type="text" class="form-control bg-white-transparent form-control-lg text-white border border-white" id="direccion" name="direccion" placeholder="Dirección">
</div>
<div class="col-sm-6 p-1">
<input type="text" class="form-control bg-white-transparent form-control-lg text-white border border-white" id="telefono" name="telefono" placeholder="Teléfono*">
</div>
<div class="col-sm-6 p-1">
<input type="file" id="cv" name="cv" class="form-control">
</div>
<div class="col-sm-12 p-1">
<textarea class="form-control bg-white-transparent form-control-lg text-white border border-white" style=" resize: none; height: 220px;" id="mensaje" name="mensaje" placeholder="Mensaje*"></textarea>
</div>
<div class="col-sm-6 p-1">
<button class="btn btn-lg bg-orange" type="submit">Postular</button><button class="btn btn-lg bg-orange ml-1" type="reset">Borrar</button>
</div>
<div class="col-sm-6 p-1">
<!-- Mensaje de exito -->
<div class="alert alert-success alert-dismissible d-none mb-0 mt-2" role="alert" id="exitoPostular">Mensaje enviado con éxito
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<!-- Mensaje de error -->
<div class="alert alert-danger alert-dismissible d-none mb-0 mt-2" role="alert" id="errorPostular">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
</div>
<div class="col-sm-12 p-1">
<span class="text-white">(*)Datos Obligatorios</span>
</div>
</form>