Advertisement
Guest User

Untitled

a guest
Sep 29th, 2018
412
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.53 KB | None | 0 0
  1.     <?php
  2. include "../koneksi.php";
  3.  
  4. $NPM                = $_POST["NPM"];
  5. $Nama_Mahasiswa     = $_POST["Nama_Mahasiswa"];
  6.  
  7. $Tempat_Lahir       = $_POST["Tempat_Lahir"];
  8. $Tanggal_Lahir      = $_POST["Tanggal_Lahir"];
  9. $JK                 = $_POST["JK"];
  10. $Alamat             = $_POST["Alamat"];
  11. $IPK                = $_POST["IPK"];
  12.  
  13. $Email              = $_POST["Email"];
  14. $No_Telp            = $_POST["No_Telp"];
  15. $Kode_Jurusan_Mhs   = $_POST["Kode_Jurusan_Mhs"];
  16.  
  17. $foto = $_FILES['foto']['name'];
  18. $tmp = $_FILES['foto']['tmp_name'];
  19.  
  20. // Rename nama fotonya dengan menambahkan tanggal dan jam upload
  21. $fotobaru = date('dmYHis').$foto;
  22.  
  23. // Set path folder tempat menyimpan fotonya
  24. $path = "../upload/".$fotobaru;
  25.  
  26. // Cek apakah gambar berhasil diupload atau tidak
  27. if(move_uploaded_file($tmp, $path)){ // Jika proses upload sukses
  28.     // Proses simpan ke Database
  29.     if ($add = mysqli_query($konek, "INSERT INTO mahasiswa (npm, nama_mahasiswa, tempat_lahir, ipk,
  30.                                     tanggal_lahir, jenis_kelamin, alamat, email, no_telp, jurusan, gambar_filename
  31.                                     ) VALUES
  32.                                 ('$NPM', '$Nama_Mahasiswa','$Tempat_Lahir','$IPK',
  33.                                 '$Tanggal_Lahir', '$JK', '$Alamat', '$Email','$No_Telp',
  34.                                 '$Kode_Jurusan_Mhs', '$fotobaru')")){
  35.  
  36.         $passwordRandom = randomPassword();
  37.         $hashPasswordRandom = md5($passwordRandom);
  38.  
  39.         $createUser = mysqli_query($konek, "INSERT INTO user (username, password, password_asli, role_id, status_kirim_email)
  40.                             VALUES ('$NPM', '$hashPasswordRandom','$passwordRandom','5', '0')");
  41.  
  42.         if($createUser)    
  43.         {
  44.             kirimPassword($NPM , $passwordRandom, $Email); 
  45.             header("Location: mahasiswa.php");
  46.         exit();
  47.     }
  48.     }
  49.         die ("Terdapat kesalahan : ". mysqli_error($konek));
  50.    
  51. }else{ // Jika proses upload gagal
  52.     $response = array(
  53.         'status'=>'gagal', // Set status
  54.         'pesan'=>'Gambar gagal untuk diupload', // Set pesan
  55.     );
  56.  
  57. }
  58.  
  59.  
  60. function randomPassword() {
  61.     $alphabet = "abcdefghijklmnopqrstuwxyzABCDEFGHIJKLMNOPQRSTUWXYZ0123456789";
  62.     $pass = array(); //remember to declare $pass as an array
  63.     $alphaLength = strlen($alphabet) - 1; //put the length -1 in cache
  64.     for ($i = 0; $i < 8; $i++) {
  65.         $n = rand(0, $alphaLength);
  66.         $pass[] = $alphabet[$n];
  67.     }
  68.     return implode($pass); //turn the array into a string
  69. }
  70.  
  71. function kirimPassword($username, $password, $email){
  72.    
  73.    
  74.  
  75.     $query = "SELECT * FROM rsa ORDER BY id DESC LIMIT 1";
  76.     $result = mysqli_query($konek, $query);
  77.    
  78.     $n = "";
  79.     $e = "";
  80.     $d = "";
  81.     $hasil ="";
  82.  
  83.     if($result){
  84.       while($row = mysqli_fetch_array($result)){
  85.         $n = $row['n'];
  86.         $e = $row['e'];
  87.         $d = $row['d'];
  88.  
  89.         for($i=0;$i<strlen($password);++$i){
  90.             //rumus enkripsi <enkripsi>=<pesan>^<e>mod<n>
  91.             $hasil.=gmp_strval(gmp_mod(gmp_pow(ord($password[$i]),$e),$n));
  92.             //antar tiap karakter dipisahkan dengan "."
  93.             if($i!=strlen($password)-1){
  94.                 $hasil.=".";
  95.             }
  96.           }
  97.       }
  98.     }
  99.    
  100.  
  101.     $mail = new PHPMailer;
  102.     $mail->isSMTP();                                      // Set mailer to use SMTP
  103.     $mail->Host = 'smtp.gmail.com';  // Specify main and backup SMTP servers
  104.     $mail->SMTPAuth = true;                               // Enable SMTP authentication
  105.     $mail->Username = '...@gmail.com';                 // SMTP username
  106.     $mail->Password = '...';                           // SMTP password
  107.     $mail->SMTPSecure = 'ssl';                            // Enable TLS encryption, `ssl` also accepted
  108.     $mail->Port = 465;                                    // TCP port to connect to
  109.     $mail->setFrom('ambotang7277@gmail.com', 'Panitia Pemilihan Raya Mahasiswa');
  110.     $mail->addAddress($email);               // Name is optional
  111.  //   $mail->addReplyTo('ambotang7277@gmail.com', 'Information');
  112.     $mail->isHTML(true);                                  // Set email format to HTML
  113.     $mail->Subject = 'Akun Login User E-Voting';
  114.     $mail->AddEmbeddedImage('../aset/foto/univ2.jpg', 'logo2');
  115.     $mail->AddEmbeddedImage('../aset/foto/univ1.jpg', 'logo1');
  116.     $mail->Body    = "<img src='cid:logo1' width='100' height='100'/> <img src='cid:logo2' width='100' height='100'/><br/><br/>
  117.     Username Anda :'.$username.' Password Anda : '.$hasil.
  118.                         '<br/> Silakan masukkan password di menu RSA";
  119.     $mail->AltBody = 'Silakan didecrypt di alamat voting menu RSA';
  120.    
  121.     if(!$mail->send()) {
  122.         $error = $mail->ErrorInfo;
  123.         echo ("<script LANGUAGE='JavaScript'>
  124.         window.alert('Email Tidak Terkirim');
  125.         window.location.href='user.php';
  126.         </script>");
  127.     } else {
  128.         echo ("<script LANGUAGE='JavaScript'>
  129.         window.alert('Email Terkirim');
  130.         window.location.href='user.php';
  131.         </script>");
  132.     }
  133.  
  134.  
  135.     }
  136.  
  137.  
  138.  
  139. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement