//Si el mensaje no ha podido ser enviado se realizaran 4 intentos mas como mucho //para intentar enviar el mensaje, cada intento se hara 5 segundos despues //del anterior, para ello se usa la funcion sleep if (!$exito && $mail->ErrorInfo != "SMTP Error: Data not accepted") { echo "Problemas enviando correo electrónico a " . $valor; echo "<br/>" . $mail->ErrorInfo; } } $enviar = isset($_REQUEST['enviar']); if ($enviar) { $nombre = $_REQUEST['nombre']; $email = $_REQUEST['email']; $asunto = $_REQUEST['asunto']; $destinatario = $_REQUEST['destinatario']; $mensaje = $_REQUEST['mensaje']; enviarCorreo($destinatario, $email, $nombre, $asunto, $mensaje); } else { ?> <html> <head> <title>Formulario de correo (prueba)</title> </head> <body> <form name="formulario" method="post" action="" enctype="multipart/form-data"> <label for="textfield">Nombre y apellidos: </label> <input name="nombre" type="text" id="nombre" size="75"> <br> <br> <label for="label"><b style="color:black;background-color:#a0ffff">Correo</b> electronico: </label> <input name="email" type="text" id="email" size="76"> <br>
$telefono = $_POST['telefono']; $mensaje = $_POST['mensaje']; guardarBD($nombre, $email, $telefono, $mensaje); // Definir el correo de destino: $dest = "*****@*****.**"; // Estas son cabeceras que se usan para evitar que el correo llegue a SPAM: $headers = "From: {$nombre} <{$email}>\r\n"; $headers .= "X-Mailer: PHP5\n"; $headers .= 'MIME-Version: 1.0' . "\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; // Aqui definimos el asunto y armamos el cuerpo del mensaje $asunto = "Contacto"; $cuerpo = "Nombre: " . $nombre . "<br>"; $cuerpo .= "Email: " . $email . "<br>"; $cuerpo .= "Telefono: " . $telefono . "<br>"; $cuerpo .= "Mensaje: " . $mensaje; // Esta es una pequena validación, que solo envie el correo si todas las variables tiene algo de contenido: if ($nombre != '' && $email != '' && $telefono != '' && $mensaje != '') { mail($dest, $asunto, $cuerpo, $headers); //ENVIAR! } } $privkey = "6LfBV-wSAAAAAOpA2rVgiY7ysTtBTAgON6OkXXYI"; $verify = recaptcha_check_answer($privkey, $_SERVER['REMOTE_ADDR'], $_POST['recaptcha_challenge_field'], $_POST['recaptcha_response_field']); if ($verify->is_valid) { echo "Correcto!"; enviarCorreo(); } else { echo "Upps parece que el codigo de verificacion no es correcto."; echo '<a href="formulario.php">Clic aqui para regresar</a>'; }
function enviaCorreo($para, $asunto, $estilo, $idioma = 'es_ES', $comienzo, $enlace = '', $jornada_id = null) { $direccion = ejecutaConsulta("Select valor from config where nombre='direccion_activa';"); $direccion = pg_result($direccion, 0, 0); if (!empty($jornada_id)) { $Result_jornada = ejecutaConsulta("SELECT *\r\n\t\t\t\t\t\t\t\t\t\tFROM jornadas\r\n\t\t\t\t\t\t\t\t\t\tWHERE estatus IN ('ACT', 'CDO')\r\n\t\t\t\t\t\t\t\t\t\tAND id = {$jornada_id};"); while ($row = pg_fetch_assoc($Result_jornada)) { //$titulo = $row['path_email_header']; //$pie = $row['path_email_footer']; $titulo = substr($row['path_email_header'], 0, strrpos($row['path_email_header'], ".")); $ext = strrchr($row['path_email_header'], "."); $titulo = $titulo . '_' . $idioma . $ext; $pie = substr($row['path_email_footer'], 0, strrpos($row['path_email_footer'], ".")); $ext = strrchr($row['path_email_footer'], "."); $pie = $pie . '_' . $idioma . $ext; } } else { $pie = "img/franja_bajo2.gif"; $titulo = "img/tituloCorreogvSIG-Training.png"; } $codigoHtml = "\r\n\t\t{$estilo}\r\n\t\t<table width='100%' height='100%'>\r\n\t\t\t<tbody class='fuente_general'>\r\n\t\t\t<tr>\r\n\t\t\t\t<td valign='top' height='1%'>\r\n\t\t\t\t\t<img src='{$direccion}/img/banners/{$titulo}' alt='encabezado' border='0' />\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t\t<tr>\r\n\t\t\t <td valign='top'>\r\n\t\t\t <br/>{$comienzo}{$enlace}\r\n\t\t\t </td>\r\n\t\t\t</tr>\r\n\t\t\t<tr>\r\n\t\t\t <td valign='bottom'>\r\n\t\t\t\t\t<img src='{$direccion}/img/banners/{$pie}' alt='piecorreo' border='0' />\r\n\t\t\t </td>\r\n\t\t\t</tr>\r\n\t\t </tbody>\r\n\t\t</table>"; $cabecera = "Content-type: text/html\n"; return enviarCorreo($para, $asunto, $codigoHtml, $idioma); }
function modificaListaPublicacion() { $request = \Slim\Slim::getInstance()->request(); $data = json_decode($request->getBody(), TRUE); $con = getConnection(); $pstmt = $con->prepare("SELECT TOKENLINK FROM LISTAPUBLICACION WHERE IDLISTAPUBLICACION=?"); $pstmt->execute(array($data["idlp"])); $tokenlink = $pstmt->fetch(PDO::FETCH_ASSOC)["TOKENLINK"]; $pstmt = $con->prepare("UPDATE LISTAPUBLICACION SET NOMBREABR=? WHERE IDLISTAPUBLICACION=?"); $pstmt->execute(array($data["tema"], $data["idlp"])); //GRUPOS $pstmt = $con->prepare("DELETE FROM LISTAPUBXGRUPO WHERE IDLISTAPUBLICACION=?"); $pstmt->execute(array($data["idlp"])); for ($i = 0; $i < count($data["grupos"]); $i++) { $idgrupo = $data["grupos"][$i]["id"]; $pstmt = $con->prepare("INSERT INTO LISTAPUBXGRUPO VALUES(?,?)"); $pstmt->execute(array($idgrupo, $data["idlp"])); } //PUBLICACIONES $pstmt = $con->prepare("SELECT IDLECTURAASIGNADA FROM LECTURAASIGNADA WHERE IDLISTAPUBLICACION=?"); $pstmt->execute(array($data["idlp"])); $listaIds = array(); while ($element = $pstmt->fetch(PDO::FETCH_ASSOC)) { $listaIds[] = $element; } for ($i = 0; $i < count($listaIds); $i++) { $pstmt = $con->prepare("DELETE FROM NOTALECTURA WHERE IDLECTURAASIGNADA=?"); $pstmt->execute(array($listaIds[$i]["IDLECTURAASIGNADA"])); } $pstmt = $con->prepare("DELETE FROM LECTURAASIGNADA WHERE IDLISTAPUBLICACION=?"); $pstmt->execute(array($data["idlp"])); $mensajes = array(); for ($i = 0; $i < count($data["lecturas"]); $i++) { $lectura = $data["lecturas"][$i]; $idarchivo = obtieneIdArchivo($lectura["idpublicacion"]); if ($idarchivo == null) { $mensajes[] = "error"; break; } $pstmt = $con->prepare("INSERT INTO LECTURAASIGNADA VALUES(null,?,?,'notasDemo',?,?,?,?)"); $pstmt->execute(array($lectura["titulo"], $lectura["palabrasclave"], $lectura["observaciones"], $lectura["autores"], $data["idlp"], $idarchivo)); $lastlectura = $con->lastInsertId(); $notasLectura = $data["lecturas"][$i]["notaslectura"]; for ($j = 0; $j < count($notasLectura); $j++) { $pstmt = $con->prepare("INSERT INTO NOTALECTURA VALUES(NULL,?,?)"); $pstmt->execute(array($notasLectura[$j]["contenido"], $lastlectura)); } } //ENVIAR A MIEMBROS DE GRUPOS SELECCIONADOS (probado) $pstmt = $con->prepare("SELECT idgrupo from LISTAPUBXGRUPO where idlistapublicacion=?"); $pstmt->execute(array($data["idlp"])); $listaIdsGrupo = array(); while ($element = $pstmt->fetch(PDO::FETCH_ASSOC)) { $listaIdsGrupo[] = $element["idgrupo"]; } $cadenaGrupos = implode(",", $listaIdsGrupo); $pstmt = $con->prepare("SELECT distinct U.nombres, U.apellidos, U.correo_institucional\r\n\t\t\t\t\t\t\t\tfrom usuarioxgrupo GU, usuario U\r\n\t\t\t\t\t\t\t\twhere GU.idgrupo in (?) and U.idusuario<>1 and GU.idusuario=U.idusuario"); $pstmt->execute(array($cadenaGrupos)); $listaUsuarios = array(); while ($element = $pstmt->fetch(PDO::FETCH_ASSOC)) { $listaUsuarios[] = $element; } enviarCorreo($listaUsuarios, $tokenlink); //print_r($listaUsuarios); if (count($mensajes) > 0) { echo json_encode(array("status" => 0)); } else { echo json_encode(array("status" => 1)); } }
$tipo = 7; #pdf $tamano = 1000; $auxsololect = 'N'; $descr = 'Pdf respuesta'; $isql = "insert into anexos (SGD_REM_DESTINO,\r\n ANEX_RADI_NUME,\r\n ANEX_CODIGO,\r\n ANEX_ESTADO,\r\n ANEX_TIPO,\r\n ANEX_TAMANO,\r\n ANEX_SOLO_LECT,\r\n ANEX_CREADOR,\r\n ANEX_DESC,\r\n ANEX_NUMERO,\r\n ANEX_NOMB_ARCHIVO,\r\n ANEX_BORRADO,\r\n ANEX_SALIDA,\r\n SGD_DIR_TIPO,\r\n ANEX_DEPE_CREADOR,\r\n SGD_TPR_CODIGO,\r\n ANEX_FECH_ANEX,\r\n SGD_APLI_CODI,\r\n SGD_TRAD_CODIGO,\r\n RADI_NUME_SALIDA,\r\n SGD_EXP_NUMERO,\r\n ANEX_ESTADO_EMAIL)\r\n values ({$radicado_rem},\r\n {$numRadicadoPadre},\r\n '{$codigo}',\r\n 2,\r\n {$tipo},\r\n {$tamano},\r\n '{$auxsololect}',\r\n '{$usua}',\r\n '{$descr}',\r\n {$auxnumero},\r\n '{$enlace}',\r\n 'N',\r\n 1,\r\n {$radicado_rem},\r\n {$coddepe},\r\n NULL,\r\n {$sqlFechaHoy},\r\n NULL,\r\n 1,\r\n {$Radicado},\r\n NULL,1)"; $bien = $db->conn->Execute($isql); // Si actualizo BD correctamente if ($bien) { echo "</br></br> anexado ok </br>"; } else { echo "</br></br> anexado ERROR </br>"; } $strServer = "172.16.1.92:25"; //Envio de correo $resultadoEnvio = enviarCorreo($Radicado, $usMailSelect, "Respuesta_Web", $_POST["usuanomb"], $_POST["destinatario"], $strServer, $adjuntos, "", $asu, $_POST["concopia"], $numRadicadoPadre, $rutaArchivo, $db); //Funcion que realiza el envio de correo. function enviarCorreo($verradicado2, $correo, $usuario, $Nomb_usua, $Email_usua, $servidorSmtp, $adjuntos, $ext, $respuesta, $correocopia, $nurad, $rutaArchivo, $db) { $mail = new PHPMailer(); $cuerpo = "<br>El Departamento Nacional de Planeacion\r\n <br> ha dado respuesta a su solicitud No. " . $nurad . " mediante el oficio No." . $verradicado2 . ", la cual tambien puede ser consultada en el portal Web del DNP.</p>\r\n <br><br><b><center>Si no puede visualizar bien el correo, o no llegaron bien los Adjuntos, puede Consultarlos en :\r\n <a href='http://orfeo.dnp.gov.co/pqr/consulta.php?rad={$nurad}'>http://orfeo.dnp.gov.co/pqr/consulta.php</a><br><br><br>" . htmlspecialchars($respuesta) . "</b></center><BR>\r\n "; $db = new ConnectionHandler("{$ruta_raiz}"); $db->conn->SetFetchMode(ADODB_FETCH_ASSOC); $iSqlRadPadre = "Select RADI_PATH from radicado where radi_nume_radi={$nurad}"; $rsPath = $db->conn->Execute($iSqlRadPadre); $pathPadre = $rsPath->fields["RADI_PATH"]; $mail->Mailer = "smtp"; $mail->From = $correo; $mail->FromName = $usuario; $mail->Host = $servidorSmtp; $mail->Mailer = "smtp";
$insercliente = $db->prepare("\n\t\t\t\t\tINSERT INTO tbl_deco_margarita (pr_nombre, pr_apellido, pr_email, pr_fecha, pr_info, pr_fecha_ingreso) VALUES \n\t\t\t\t\t(?,?,?,?,'" . $fecha . "',?)"); $insercliente->bindParam(1, $_POST['nombre'], PDO::PARAM_STR); $insercliente->bindParam(2, $_POST['apellido'], PDO::PARAM_INT); $insercliente->bindParam(3, $_POST['email'], PDO::PARAM_STR); $insercliente->bindParam(4, $_POST['fecha'], PDO::PARAM_STR); $insercliente->bindParam(5, $info, PDO::PARAM_STR); $insercliente->execute(); } catch (Exception $e) { //SI EL INGRESO A LA BASE NO SE HIZO CORRECTAMENTE presentarError(); exit; } //SI NO HUBO ERRORES EN EL INGRESO ENVIO CORREO Y MANDO AL TYP enviarCorreo($_POST['email'], $_POST['nombre'] . ' ' . $_POST['apellido']); presentarTYP(); } else { //SI SE INSCRIBIO ANTERIORMENTE SOLO ENVIAR CORREO Y PRESENTAR TYP enviarCorreo($_POST['email'], $_POST['nombre'] . ' ' . $_POST['apellido']); presentarTYP(); exit; } //SI HUBO ALGUN ERROR EN EL TRANSCURSO DEL PROCESO } catch (Exception $e) { presentarError(); exit; } //SI HUBO ERROR EN EL INGRESO DE LOS CAMPOS } else { presentarError(); exit; }
function enviaCorreo($para, $asunto, $estilo = '', $idioma = 'es_ES', $comienzo = '', $enlace = '', $bcc = NULL) { $direccion = ejecutaConsulta("Select valor from config where nombre='direccion_activa';"); $direccion = pg_result($direccion, 0, 0); $pie = 'franja_bajo2.gif'; $imgEncabezadoCorreo = 'tituloCorreogvSIG-Training.png'; $codigoHtml = "{$estilo}\r\n\t\t<table width ='100%' height='100%'>\r\n <tbody class='fuente_general'>\r\n\t\t\t<tr>\r\n\t\t\t\t<td valign='top' height='1%'>\r\n\t\t\t\t\t<img src='{$direccion}/img/{$imgEncabezadoCorreo}' border='0' alt = 'encabezado_correo'/>\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t\t<tr>\r\n\t\t\t <td valign='top'>\r\n\t\t\t <br/>{$comienzo} {$enlace}\r\n\t\t\t </td>\r\n\t\t\t</tr>\r\n\t\t\t<tr>\r\n\t\t\t <td valign='bottom'>\r\n\t\t\t\t\t<img src='{$direccion}/img/{$pie}' border='0' alt = 'pie_pagina_correo' />\r\n\t\t\t </td>\r\n\t\t\t</tr>\r\n\t\t </tbody>\r\n\t\t</table>"; return enviarCorreo($para, $asunto, $codigoHtml, $bcc); }