6coloquio/register.php
root 435175b1e2 Se agregan fotos de afiche para descargar.
Se modifica front page con el index que trae Martin Reiris
Se valida completamente el formulario de registro(tanto captcha como lo demas)
Se crean las paginas con php y se usa include_once para no tener que repetir el header, footer y demas
2017-09-05 19:33:23 -03:00

148 lines
4.5 KiB
PHP

<?php
function verifyCaptcha(){
$url = 'https://www.google.com/recaptcha/api/siteverify';
$data = array(
'secret' => '6LeLxy4UAAAAABClplWLJUjZ1_nhX_-SI7CuNcm8',
'response' => $_POST["g-recaptcha-response"]
);
$options = array(
'http' => array (
'header' => 'Content-Type: application/x-www-form-urlencoded\r\n',
'method' => 'POST',
'content' => http_build_query($data)
)
);
$context = stream_context_create($options);
$verify = file_get_contents($url, false, $context);
$captcha_success=json_decode($verify);
return $captcha_success;
}
function verifyExistance($doc,$mail){
$fp = fopen("2021y22.csv", 'r');
fclose($fp);
}
function setheaders() {
$fp = fopen("2021y22.csv", 'w');
$cabezal = array('Nombre', 'Apellido','TipoDoc','Documento',
'Direccion','Pais','Ciudad', 'Telefono', 'Email',
'Profesión','Trabaja en','Financiación','Detalle Financiación');
if($fp){
fputcsv($fp,$cabezal);
fclose($fp);
}
else{
die("unable to open file");
}
}
function registrar($fila) {
$fp = fopen("2021y22.csv", 'a');
if($fp){
fputcsv($fp,$fila);
fclose($fp);
}
else{
die("unable to open file");
}
}
$errors = array(); // array to hold validation errors
$data = array(); // array to pass back data
$filename = "2021y22";
// validate the variables ======================================================
$data['nombre'] = $_POST['nombre'];
$data['apellido'] = $_POST['apellido'];
$data['tipodoc'] = $_POST['doctype'];
$data['nrodoc'] = $_POST['docnro'];
$data['direccion'] = $_POST['dir'];
$data['pais'] = $_POST['pais'];
$data['ciudad'] = $_POST['ciudad'];
$data['telefono'] = $_POST['tel'];
$data['email'] = $_POST['email'];
$data['profesion'] = $_POST['profesion'];
$data['trabaja'] = $_POST['trabaja'];
$data['financiacion'] = $_POST['financiacion'];
$data['detallefinan'] = $_POST['detallefinan'];
if (empty($_POST['nombre']))
$errors['nombre'] = 'Nombre is required.';
if (empty($_POST['apellido']))
$errors['apellido'] = 'Apellido is required.';
if (empty($_POST['doctype']))
$errors['doctype'] = 'No seleccionó un tipo de doc';
if (empty($_POST['docnro']))
$errors['docnro'] = 'No ingreso un documento';
if (empty($_POST['dir']))
$errors['dir'] = 'No ingreso una direccion';
if (empty($_POST['pais']))
$errors['pais'] = 'Ingrese el pais de presedencia';
if (empty($_POST['ciudad']))
$errors['ciudad'] = 'Ingrese ciudad de presedencia';
if (empty($_POST['tel']))
$errors['ciudad'] = 'Telefono de contacto vacio o incorrecto';
if (empty($_POST['email']))
$errors['email'] = 'E-Mail de contacto vacio o incorrecto';
if (empty($_POST['profesion']))
$errors['email'] = 'indique profesion';
if (empty($_POST['trabaja']))
$errors['trabaja'] = 'Indique en el sector que trabaja';
if(empty($_POST['g-recaptcha-response'])){
$errors['recaptcha'] = 'Debe validar el captcha';
}
else if(!verifyCaptcha()){
$errors['recaptcha'] = 'Error en la validación de ReCaptcha';
}
if( !file_exists("2021y22.csv"))
setheaders();
// return a response ===========================================================
// if there are any errors in our errors array, return a success boolean of false
if ( ! empty($errors)) {
// if there are items in our errors array, return those errors
$data['success'] = false;
$data['errors'] = $errors;
}
else {
$fecha = date("m-d-h-i-s-a");
$filebkp = "bkp/registro-".$fecha.".bak.csv";
copy("2021y22.csv",$filebkp);
$fila = $data;
registrar($fila);
$data['success'] = true;
$mail = $data["email"];
$nombre = $data["nombre"] . " " . $data["apellido"];
$msg = "Hola ". $data["nombre"] ."!\n\n".
"te has registrado al 6to Coloquio Uruguayo de Matemática exitosamente!\n\n".
"Por cualquier consulta escribe a: 6coloquio@cmat.edu.uy\n\n".
"Saludos cordiales,\n\n".
"Comité Organizador, 6to Coloquio Uruguayo de Matemática.";
$headers = 'From: ' . "6coloquio@cmat.edu.uy" . "\r\n" .
'Reply-To: ' . "6coloquio@cmat.edu.uy" . "\r\n" .
'Content-Type: ' . "text/plain; charset=UTF-8". "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($mail, 'Registro confirmado. 6to Coloquio Uruguayo de Matemática', $msg, $headers);
$data['message'] = 'Registro exitoso';
}
// return all our data to an AJAX call
echo json_encode($data);
?>