· 7 years ago · Sep 29, 2018, 08:42 PM
1 <?php
2include "../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
27if(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
60function 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
71function 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?>