Postingan lainnya
mysql real escape string error ketika saya mau login
Fatal error: Uncaught Error: Call to undefined function mysql_real_escape_string() in D:\XAMPP\xampp\htdocs\alfalah\sim\action\LoginAction.php:9 Stack trace: #0 D:\XAMPP\xampp\htdocs\alfalah\sim\action\LoginAction.php(54): getLogin('asep', '1234') #1 {main} thrown in D:\XAMPP\xampp\htdocs\alfalah\sim\action\LoginAction.php on line 9
<?php
session_start();
include_once '../db/DBConnection.php';
include_once '../model/Personal.php';
include_once '../model/User.php';
include_once '../library/Enkripsi.php';
$error=0;
function getLogin($username,$password){
$user= mysql_real_escape_string($username,DBConnection::getConnection());//strip_tags($username); //untuk mencegah sql injektion
$pwd= mysql_real_escape_string($password,DBConnection::getConnection());//strip_tags($password); //untuk encegah sql injektion
$user=NULL;
$sql="select * from user where username='$usr' and password='".encrypt_decrypt('encrypt', $pwd)."'";
$dataQry = mysql_query($sql, DBConnection::getConnection())or die("Query error :". mysql_error());
while ($dataRow= mysql_fetch_array($dataQry)){
$user=new User();
$user->setUserId($dataRow['id_user']);
$user->setUsername($dataRow['username']);
$user->setPassword($dataRow['password']);
$user->setLevel($dataRow['level']);
$user->setPersonalId($dataRow['personal_id']);
$user->setPertanyaan($dataRow['pertanyaan']);
$user->setJawaban($dataRow['jawaban']);
$user->setPersonal(getPersonal($dataRow['personal_id']));
}
return $user;
}
function getPersonal($id){
$personal=NULL;
$sql="select * from personal where id_siswa='$id'";
$dataQry = mysql_query($sql, DBConnection::getConnection())or die("Query error :". mysql_error());
while ($dataRow= mysql_fetch_array($dataQry)){
$personal=new Personal();
$personal->setIdPersonal($dataRow['id_siswa']);
$personal->setNamaAwal($dataRow['nama_awal']);
$personal->setNamaTengah($dataRow['nama_tengah']);
$personal->setNamaAkhir($dataRow['nama_akhir']);
$personal->setTempatLahir($dataRow['tempat_lahir']);
$personal->setTglLahir($dataRow['tgl_lahir']);
$personal->setTelepon($dataRow['telepon']);
$personal->setAlamat($dataRow['alamat']);
$personal->setKota($dataRow['kota']);
$personal->setPropinsi($dataRow['propinsi']);
$personal->setNegara($dataRow['negara']);
$personal->setEmail($dataRow['email']);
$personal->setKelamin($dataRow['kelamin']);
$personal->setKategoriSantri($dataRow['kategori_santri']);
$personal->setTglGabung($dataRow['tgl_gabung']);
$personal->setFoto($dataRow['foto']);
}
return $personal;
}
if($_POST){
$loginPersonal =getLogin($_POST['txtUser'], $_POST['txtPassword']);
if($loginPersonal==NULL){
echo "<meta http-equiv='refresh' content='0; url=../'>";
$error=1;
}else{
/* @var $_SESSION type */
$_SESSION['SES_LOGIN'] = $loginPersonal->getPersonalId();
$_SESSION['SES_USER'] = $loginPersonal->getUsername();
$_SESSION['SES_NAMA']= $loginPersonal->getPersonal()->getNamaAwal()." ".$loginPersonal->getPersonal()->getNamaTengah()." ".$loginPersonal->getPersonal()->getNamaAkhir();
$_SESSION['SES_PERSONALID']=$loginPersonal->getPersonalId();
echo "<meta http-equiv='refresh' content='0; url=../index.php'>";
}
}
?>
<script>
var pesan=<?php echo $error; ?>;
if(pesan===1){
alert("Login Gagal Username Atau Password Tidak Valid !");
}
</script>
1 Jawaban:
Arti errornya "Uncaught Error: Call to undefined function mysql_real_escape_string()" fungsi mysql_real_escape_string() tidak terbaca/dianggap tidak ada
Kalau kita cek di <a href='http://php.net/manual/en/function.mysql-real-escape-string.php '>dokumentasi PHP fungsi mysql_real_escape_string</a> , Fungsi ini deprecated/dibuang sejak PHP 5.5 jadi kalau kamu pakai versi PHP di atasnya akan error
Solusinya juga ada 2 di dokumentasi tadi, ada mysqli ada PDO