Guest User

Untitled

a guest
Dec 13th, 2018
311
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.86 KB | None | 0 0
  1. <?php
  2.  
  3. function isNull($nombre, $user, $pass, $pass_con, $email){
  4. if(strlen(trim($nombre)) < 1 || strlen(trim($user)) < 1 || strlen(trim($pass)) < 1 || strlen(trim($pass_con)) < 1 || strlen(trim($email)) < 1)
  5. {
  6. return true;
  7. } else {
  8. return false;
  9. }
  10. }
  11.  
  12. function isEmail($email)
  13. {
  14. if (filter_var($email, FILTER_VALIDATE_EMAIL)){
  15. return true;
  16. } else {
  17. return false;
  18. }
  19. }
  20.  
  21. function validaPassword($var1, $var2)
  22. {
  23. if (strcmp($var1, $var2) !== 0){
  24. return false;
  25. } else {
  26. return true;
  27. }
  28. }
  29.  
  30. function minMax($min, $max, $valor){
  31. if(strlen(trim($valor)) < $min)
  32. {
  33. return true;
  34. }
  35. else if(strlen(trim($valor)) > $max)
  36. {
  37. return true;
  38. }
  39. else
  40. {
  41. return false;
  42. }
  43. }
  44.  
  45. function usuarioExiste($usuario)
  46. {
  47. global $conn;
  48.  
  49. $sql="SELECT id FROM inicio.usuarios WHERE usuario = ? LIMIT 1"; //$sql = consulta
  50. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  51. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  52. die (print_r(sqlsrv_errors(),true));
  53. }
  54. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  55. //print_r($row);
  56. }
  57. // aqui va en bindparam
  58. //$stmt=bindvalue("s",$usuario);
  59. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  60. die(print_r(sqlsrv_errors(),true));
  61. }
  62. $num = sqlsrv_num_rows($stmt); /*****$num******/
  63. if($num===false)
  64. echo "Error recuperando row";
  65. else
  66. echo $num;
  67. sqlsrv_close($stmt); //$stmt->close(); /******close******/
  68. if ($num > 0){
  69. return true;
  70. } else {
  71. return false;
  72. }
  73.  
  74. }
  75.  
  76. function emailExiste($email)
  77. {
  78. global $conn;
  79.  
  80. $sql="SELECT id FROM inicio.usuarios WHERE correo = ? LIMIT 1";
  81. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  82. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  83. die (print_r(sqlsrv_errors(),true));
  84. }
  85. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  86. //print_r($row);
  87. }
  88. // aqui va en bindparam
  89. //$stmt=bindvalue("s",$usuario);
  90. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  91. die(print_r(sqlsrv_errors(),true));
  92. }
  93. $num = sqlsrv_num_rows($stmt); /*****$num******/
  94. if($num===false)
  95. echo "Error recuperando row";
  96. else
  97. echo $num;
  98. sqlsrv_close($stmt); //$stmt->close(); /******close******/
  99. if ($num > 0){
  100. return true;
  101. } else {
  102. return false;
  103. }
  104. }
  105.  
  106. function generateToken()
  107. {
  108. $gen = md5(uniqid(mt_rand(), false));
  109. return $gen;
  110. }
  111.  
  112. function hashPassword($password)
  113. {
  114. $hash = password_hash($password, PASSWORD_DEFAULT);
  115. return $hash;
  116. }
  117.  
  118. function resultBlock($errors){
  119. if(count($errors) > 0)
  120. {
  121. echo "<div id='error' class='alert alert-danger' role='alert'>
  122. <a href='#' onclick=\"showHide('error');\">[X]</a>
  123. <ul>";
  124. foreach($errors as $error)
  125. {
  126. echo "<li>".$error."</li>";
  127. }
  128. echo "</ul>";
  129. echo "</div>";
  130. }
  131. }
  132.  
  133. function registraUsuario($usuario, $pass_hash, $nombre, $email, $activo, $token, $tipo_usuario){
  134.  
  135. global $conn;
  136.  
  137. $sql="INSERT INTO inicio.usuarios (usuario, password, nombre, correo, activacion, token, id_tipo) VALUES(?,?,?,?,?,?,?)";
  138. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  139. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  140. die (print_r(sqlsrv_errors(),true));
  141. }
  142. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  143. //print_r($row);
  144. }
  145. // aqui va en bindparam
  146. //$stmt=bindvalue("s",$usuario);
  147. if( sqlsrv_execute($stmt)){ /*****execute*******/
  148. return $conn->insert_id; //return $sqlsrv->insert_id;
  149. } else {
  150. return 0;
  151. }
  152. }
  153.  
  154. function enviarEmail($email, $nombre, $asunto, $cuerpo){
  155.  
  156. require_once 'PHPMailer/PHPMailerAutoload.php';
  157. /* $mail = new PHPMailer();
  158. $mail->isSMTP();
  159. $mail->SMTPAuth = true;
  160. $mail->SMTPSecure = 'tipo de seguridad'; //Modificar
  161. $mail->Host = 'dominio'; //Modificar
  162. $mail->Port = puerto; //Modificar */
  163.  
  164. $mail = new PHPMailer();
  165. $mail->isSMTP();
  166. $mail->SMTPAuth = true;
  167. $mail->SMTPSecure = 'tls'; //Modificar
  168. $mail->Host = 'smtp.gmail.com'; //Modificar
  169. $mail->Port = 587; //Modificar
  170.  
  171.  
  172. $mail->Username = 'cetyssudeban@gmail.com'; //$mail->Username = 'correo emisor'; //Modificar
  173. $mail->Password = 'cetys2018'; //$mail->Password = 'password de correo emisor'; //Modificar
  174.  
  175. $mail->setFrom('cetyssudeban@gmail.com'); //$mail->setFrom('correo emisor', 'nombre de correo emisor'); //Modificar
  176. $mail->addAddress($email, $nombre);
  177.  
  178. $mail->Subject = $asunto;
  179. $mail->Body = $cuerpo;
  180. $mail->IsHTML(true);
  181.  
  182. if($mail->send())
  183. return true;
  184. else
  185. return false;
  186. }
  187.  
  188. function validaIdToken($id, $token){
  189.  
  190. global $conn;
  191.  
  192. $sql="SELECT activacion FROM inicio.usuarios WHERE id = ? AND token = ? LIMIT 1";
  193. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  194. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  195. die (print_r(sqlsrv_errors(),true));
  196. }
  197. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  198. //print_r($row);
  199. }
  200. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  201. die(print_r(sqlsrv_errors(),true));
  202. }
  203. $rows = sqlsrv_num_rows($stmt); /*****$num******/
  204. if($rows===false)
  205. echo "Error recuperando row";
  206. else
  207. echo $rows;
  208. sqlsrv_close($stmt); //$stmt->close(); /******close******/
  209. if($rows > 0) {
  210. $stmt->bind_result($activacion); // debo buscar equivalente
  211. $stmt->fetch(); //debo buscar equivalente
  212.  
  213. if($activacion == 1){
  214. $msg = "La cuenta ya se activo anteriormente.";
  215. } else {
  216. if(activarUsuario($id)){
  217. $msg = 'Cuenta activada.';
  218. } else {
  219. $msg = 'Error al Activar Cuenta';
  220. }
  221. }
  222. } else {
  223. $msg = 'No existe el registro para activar.';
  224. }
  225. return $msg;
  226. }
  227.  
  228. function activarUsuario($id)
  229. {
  230. global $conn;
  231.  
  232. $sql="UPDATE inicio.usuarios SET activacion=1 WHERE id = ?";
  233. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  234. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  235. die (print_r(sqlsrv_errors(),true));
  236. }
  237. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  238. //print_r($row);
  239. }
  240. // aqui va en bindparam
  241. //$stmt=bindvalue("s",$usuario);
  242. $result=sqlsrv_execute($stmt);
  243. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  244. die(print_r(sqlsrv_errors(),true));
  245. }
  246. sqlsrv_close($stmt); //$stmt->close();
  247. return $result;
  248. }
  249.  
  250.  
  251. function isNullLogin($usuario, $password){
  252. if(strlen(trim($usuario)) < 1 || strlen(trim($password)) < 1)
  253. {
  254. return true;
  255. }
  256. else
  257. {
  258. return false;
  259. }
  260. }
  261.  
  262.  
  263. function login($usuario, $password)
  264. {
  265. global $conn;
  266. $sql="SELECT id, id_tipo, password FROM LoginUsuario WHERE usuario = :usuario || correo = :correo";
  267. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  268. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  269. die (print_r(sqlsrv_errors(),true));
  270. }
  271. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  272. //print_r($row);
  273. }
  274. // aqui va en bindparam
  275. //$stmt=bindvalue("s",$usuario);
  276. $result=sqlsrv_execute($stmt);
  277. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  278. die(print_r(sqlsrv_errors(),true));
  279. }
  280. $rows = sqlsrv_num_rows($stmt); /*****$num******/
  281. if($rows > 0) {
  282.  
  283. if(isActivo($usuario)){
  284.  
  285. //$stmt->bind_result($id, $id_tipo, $passwd); // debo buscar
  286. //$row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC); debo buscar
  287. //$stmt->fetch(); // debo buscar
  288.  
  289. $validaPassw = password_verify($password, $passwd);
  290.  
  291. if($validaPassw){
  292.  
  293. lastSession($id);
  294. $_SESSION['id_usuario'] = $id;
  295. $_SESSION['tipo_usuario'] = $id_tipo;
  296.  
  297. header("location: welcome.php");
  298. } else {
  299.  
  300. $errors = "La contrase&ntilde;a es incorrecta";
  301. }
  302. } else {
  303. $errors = 'El usuario no esta activo';
  304. }
  305. } else {
  306. $errors = "El nombre de usuario o correo electr&oacute;nico no existe";
  307. }
  308. return $errors;
  309.  
  310. sqlsrv_close($stmt); //$stmt->close();
  311.  
  312. }
  313.  
  314. function lastSession($id)
  315. {
  316. global $conn;
  317.  
  318. $sql="UPDATE inicio.usuarios SET last_session=NOW(), token_password='', password_request=0 WHERE id = ?";
  319. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  320. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  321. die (print_r(sqlsrv_errors(),true));
  322. }
  323. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  324. //print_r($row);
  325. }
  326. // aqui va en bindparam
  327. //$stmt=bindvalue("s",$usuario);
  328. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  329. die(print_r(sqlsrv_errors(),true));
  330. }
  331. sqlsrv_close($stmt); //$stmt->close(); /******close******/
  332.  
  333. }
  334.  
  335. function isActivo($usuario)
  336. {
  337. global $conn;
  338.  
  339. $sql="SELECT activacion FROM inicio.usuarios WHERE usuario = ? || correo = ? LIMIT 1";
  340. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  341. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  342. die (print_r(sqlsrv_errors(),true));
  343. }
  344. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  345. //print_r($row);
  346. }
  347. // aqui va en bindparam
  348. //$stmt=bindvalue("s",$usuario);
  349. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  350. die(print_r(sqlsrv_errors(),true));
  351. }
  352. //$stmt->bind_result($activacion); debo buscar
  353. sqlsrv_close($stmt); //$stmt->close(); /******close******/
  354.  
  355.  
  356. //$stmt->fetch(); debo buscar
  357.  
  358. if ($activacion == 1)
  359. {
  360. return true;
  361. }
  362. else
  363. {
  364. return false;
  365. }
  366. }
  367.  
  368. function generaTokenPass($user_id)
  369. {
  370. global $conn;
  371.  
  372. $token = generateToken();
  373.  
  374. $sql="UPDATE inicio.usuarios SET token_password=?, password_request=1 WHERE id = ?";
  375. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  376. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  377. die (print_r(sqlsrv_errors(),true));
  378. }
  379. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  380. //print_r($row);
  381. }
  382. // aqui va en bindparam
  383. //$stmt=bindvalue("s",$usuario);
  384. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  385. die(print_r(sqlsrv_errors(),true));
  386. }
  387. sqlsrv_close($stmt); //$stmt->close(); /******close******/
  388.  
  389. return $token;
  390. }
  391.  
  392. function getValor($campo, $campoWhere, $valor)
  393. {
  394. global $conn;
  395.  
  396. $sql="SELECT $campo FROM inicio.usuarios WHERE $campoWhere = ? LIMIT 1";
  397. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  398. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  399. die (print_r(sqlsrv_errors(),true));
  400. }
  401. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  402. //print_r($row);
  403. }
  404. // aqui va en bindparam
  405. //$stmt=bindvalue("s",$usuario);
  406. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  407. die(print_r(sqlsrv_errors(),true));
  408. }
  409. //$stmt->store_result(); debo buscar
  410. $num = sqlsrv_num_rows($stmt); /*****$num******/
  411. if ($num > 0)
  412. {
  413. //$stmt->bind_result($_campo);
  414. //$stmt->fetch();
  415. return $_campo;
  416. }
  417. else
  418. {
  419. return null;
  420. }
  421. }
  422.  
  423. function getPasswordRequest($id)
  424. {
  425. global $conn;
  426.  
  427. $sql="SELECT password_request FROM inicio.usuarios WHERE id = ?";
  428. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  429. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  430. die (print_r(sqlsrv_errors(),true));
  431. }
  432. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  433. //print_r($row);
  434. }
  435. // aqui va en bindparam
  436. //$stmt=bindvalue("s",$usuario);
  437. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  438. die(print_r(sqlsrv_errors(),true));
  439. }
  440. //$stmt->bind_param('i', $id);
  441. //$stmt->execute();
  442. //$stmt->bind_result($_id);
  443. //$stmt->fetch();
  444.  
  445. if ($_id == 1)
  446. {
  447. return true;
  448. }
  449. else
  450. {
  451. return null;
  452. }
  453. }
  454.  
  455. function verificaTokenPass($user_id, $token){
  456.  
  457. global $conn;
  458.  
  459. $sql="SELECT activacion FROM inicio.usuarios WHERE id = ? AND token_password = ? AND password_request = 1 LIMIT 1";
  460. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  461. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  462. die (print_r(sqlsrv_errors(),true));
  463. }
  464. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  465. //print_r($row);
  466. }
  467. // aqui va en bindparam
  468. //$stmt=bindvalue("s",$usuario);
  469. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  470. die(print_r(sqlsrv_errors(),true));
  471. }
  472. $num = sqlsrv_num_rows($stmt); /*****$num******/
  473. if($num===false)
  474. echo "Error recuperando row";
  475. else
  476. echo $num;
  477. sqlsrv_close($stmt); //$stmt->close(); /******close******/
  478. if ($num > 0)
  479. {
  480. //$stmt->bind_result($activacion);
  481. //$stmt->fetch();
  482. if($activacion == 1)
  483. {
  484. return true;
  485. }
  486. else
  487. {
  488. return false;
  489. }
  490. }
  491. else
  492. {
  493. return false;
  494. }
  495. }
  496.  
  497. function cambiaPassword($password, $user_id, $token){
  498.  
  499. global $conn;
  500.  
  501. $sql="UPDATE INICIO.usuarios SET password = ?, token_password='', password_request=0 WHERE id = ? AND token_password = ?";
  502. $stmt = sqlsrv_prepare($conn, $sql); //preparo la sentencia con sql prepare //se realiza el query que ingresa la conexion y la consulta /*****prepare********/
  503. if( $stmt === false){ //si el $stmt es falso = error en la conexion
  504. die (print_r(sqlsrv_errors(),true));
  505. }
  506. while ($row =sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){ //mientras haya resultadons el SQLSRV_FETCH_ASSOC me los enlista en una tabla con array desde 0
  507. //print_r($row);
  508. }
  509. // aqui va en bindparam
  510. //$stmt=bindvalue("s",$usuario);
  511. if( sqlsrv_execute($stmt)===false){ /*****execute*******/
  512. return true;
  513. } else {
  514. return false;
  515. }
  516. }
  517.  
  518. ?>
Add Comment
Please, Sign In to add comment