Advertisement
Guest User

Untitled

a guest
Jun 20th, 2018
423
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.97 KB | None | 0 0
  1. <?php
  2. include "conn.php";
  3. ob_start();
  4. use PHPMailer\PHPMailer\PHPMailer;
  5. use PHPMailer\PHPMailer\Exception;
  6. require 'vendor/autoload.php';
  7. if(isset($_POST['login'])){
  8.  
  9. $email = $_POST['mail'];
  10. $pass = $_POST['password'];
  11. $pass = md5($pass);
  12.  
  13. $sql = "SELECT * FROM users WHERE email='$email' and password='$pass'";
  14. $result = $conn->query($sql);
  15. if($result->num_rows>0){
  16. while($row = $result->fetch_assoc()){
  17. $_SESSION["logged"] = "1";
  18. $_SESSION["id"] = $row['id'];
  19. }
  20. header('Location: ./index.php');
  21. echo "USPESNO SI LOGOVAN";
  22. }else{
  23. echo "Nisi se uspesno ulogovao!";
  24. }
  25. }
  26.  
  27.  
  28. // return tru if $str ends with $sub
  29. function endsWith( $str, $sub ) {
  30. return ( substr( $str, strlen( $str ) - strlen( $sub ) ) == $sub );
  31. }
  32.  
  33. if(isset($_POST['register'])){
  34. $email = $_POST['mail'];
  35. $pass = $_POST['password'];
  36. $pass = md5($pass);
  37. $code=substr(md5(mt_rand()),0,15);
  38.  
  39.  
  40.  
  41. $sql = "INSERT INTO users (`email`, `password`, `code`)
  42. VALUES ('$email', '$pass', '$code')";
  43.  
  44. if($conn->query($sql) === TRUE){
  45. $sql = "SELECT id FROM users WHERE email='$email'";
  46. $result = $conn->query($sql);
  47. if($result->num_rows>0){
  48. while($row = $result->fetch_assoc()){
  49. $id = $row["id"];
  50. }
  51. }else{
  52. echo "Error: ". $sql . "<br>" . $conn->error;
  53. }
  54. if(endsWith($email, "@raf.rs")){
  55. //Saljem mail sa $id i $code
  56. $mail = new PHPMailer(true);
  57. try {
  58. $mail->SMTPDebug = 0; // Enable verbose debug output
  59. $mail->isSMTP(); // Set mailer to use SMTP
  60. $mail->Host = 'smtp.gmail.com'; // Specify main and backup SMTP servers
  61. $mail->SMTPAuth = true; // Enable SMTP authentication
  62. $mail->Username = 'rafoidinfo@gmail.com'; // SMTP username
  63. $mail->Password = 'rafrules'; // SMTP password
  64. $mail->SMTPSecure = 'tls'; // Enable TLS encryption, `ssl` also accepted
  65. $mail->Port = 587; // TCP port to connect to
  66.  
  67.  
  68.  
  69. //Recipients
  70. $mail->setFrom('rafoidinfo@gmail.com');
  71. $mail->addAddress($email);
  72.  
  73. //Content
  74. $mail->isHTML(true); // Set email format to HTML
  75. $mail->Subject = 'Validacioni link';
  76. $mail->Body = 'Kliknite na ovaj <a href="https://rafoid.000webhostapp.com/verification.php?id='.$id.'&code='.$code.'">link</a> da bi ste aktivirali svoj nalog.';
  77.  
  78. $mail->send();
  79. echo "Poslali smo vam validacioni kod na email";
  80. } catch (\Exception $e) {
  81. echo 'Message could not be sent. Mailer Error: ', $mail->ErrorInfo;
  82. }
  83. }else{
  84. echo "Morate se registrovati sa RAF mail-om!";
  85. }
  86.  
  87.  
  88. }else{
  89. echo "Error: ". $sql . "<br>" . $conn->error;
  90. }
  91.  
  92. }
  93.  
  94. if(isset($_POST['reset'])){
  95.  
  96. $email = $_POST['mail'];
  97. $sql = "SELECT * FROM users WHERE email='$email'";
  98. $result = $conn->query($sql);
  99. if($result->num_rows>0){
  100. $code=substr(md5(mt_rand()),0,15);
  101. while($row = $result->fetch_assoc()){
  102. $id = $row["id"];
  103. }
  104. //apdejtujem code polje u bazi
  105. $sql = "UPDATE users SET code='$code' WHERE id='$id'";
  106. $result = $conn->query($sql);
  107.  
  108. //nalog postoji, saljem mail
  109. $mail = new PHPMailer(true);
  110. try {
  111. $mail->SMTPDebug = 0; // Enable verbose debug output
  112. $mail->isSMTP(); // Set mailer to use SMTP
  113. $mail->Host = 'smtp.gmail.com'; // Specify main and backup SMTP servers
  114. $mail->SMTPAuth = true; // Enable SMTP authentication
  115. $mail->Username = 'rafoidinfo@gmail.com'; // SMTP username
  116. $mail->Password = 'rafrules'; // SMTP password
  117. $mail->SMTPSecure = 'tls'; // Enable TLS encryption, `ssl` also accepted
  118. $mail->Port = 587; // TCP port to connect to
  119. //Recipients
  120. $mail->setFrom('rafoidinfo@gmail.com');
  121. $mail->addAddress($email);
  122.  
  123. //Content
  124. $mail->isHTML(true); // Set email format to HTML
  125. $mail->Subject = 'Reset sifre';
  126. $mail->Body = 'Kliknite na ovaj <a href="https://rafoid.000webhostapp.com/reset.php?code='.$code.'">link</a> kako bi resetovali sifru.';
  127.  
  128. $mail->send();
  129. echo "Poslali smo vam link za reset sifre na e-mail";
  130. } catch (\Exception $e) {
  131. echo 'Message could not be sent. Mailer Error: ', $mail->ErrorInfo;
  132. }
  133. }
  134. }
  135.  
  136. if(isset($_POST['update'])){
  137. $email = $_POST['mail'];
  138. $pass = $_POST['password'];
  139. $pass = md5($pass);
  140.  
  141. $sql = "UPDATE users SET password='$pass' WHERE email='$email'";
  142. $result = $conn->query($sql);
  143. }
  144.  
  145.  
  146. //Glasanje
  147. //Prosledjuje se sesija i ID od aplikacije
  148.  
  149. if(isset($_POST['glasaj']) && isset($_POST['korisnik']) && isset($_POST['appID'])){
  150. $korisnik = $_POST['korisnik'];
  151. $appID = $_POST['appID'];
  152.  
  153. //provera da li je korisnik vec glasao
  154. // proveravam da li je id korisnika == glasac u tabeli glasovi
  155. $sql = "SELECT * FROM glasovi WHERE glasac = '$korisnik'";
  156. $result = $conn->query($sql);
  157. if($result->num_rows>0){
  158. echo "Vec ste glasali za neku aplikaciju!";
  159. }else{
  160. //Ako nema poklapanja u bazi onda moze da glasa
  161. $sql = "INSERT INTO glasovi (`glasac`, `aplikacija`)
  162. VALUES ('$korisnik', '$appID')";
  163. if($conn->query($sql) === TRUE){
  164. echo "Uspesno ste glasali za ovu aplikaciju <br>Napomena: Ne mozete glasati za vise od jedne aplikacije niti mozete promeniti glas!";
  165. }
  166. }
  167. }
  168.  
  169.  
  170. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement