Postingan lainnya
Kelas Premium!
Belajar bikin website dari nol sekarang
Gunakan kupon "lebihcepat" untuk diskon 25%!
mysqli_real_escape_string
permisi kakak, pada video tutorial mengamankan form register, disini saya mendapatkan error ketika menggunakan fungsi mysqli_real_escape_string, mohon penjelasan kak? Terimakasih :)
12 Jawaban:
Maaf.. error nya gimana ya ? silahkan disertakan juga kode disini.. agar lebih jelas
Warning: mysqli_real_escape_string() expects parameter 1 to be mysqli, object given in C:\xampp\htdocs\auth\functions\user.php on line 7
Warning: mysqli_real_escape_string() expects parameter 1 to be mysqli, object given in C:\xampp\htdocs\auth\functions\user.php on line 8 Berhasil
itu mas peringatan error-nya. saya koneksi databasenya menggunakan PDO, mas
Lampirin kode mu juga disini mba.. saya gk tau di line 7 atau 8 mu gimana..
query($query); $link->setAttribute (PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo 'Berhasil'; } catch (PDOException $se){ echo $se->getMessage(); } }
itu kode yang di user.php-nya mas. Saya mengikuti tutorial login dan register dengan OOP mas. tapi pas bagian mysqli_real_escape_string, saya terdapat error
Klau saya periksa sih gk ada yang salah disini..
<?php
function register_user($nama, $pass){
global $link;
$nama = mysqli_real_escape_string($link, $nama);
$pass = mysqli_real_escape_string($link, $pass);
$pass = password_hash($pass, PASSWORD_DEFAULT);
$query = "INSERT INTO users (username, password) VALUES ('$nama', '$pass' )";
try {
$link->query($query);
$link->setAttribute (PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo 'Berhasil';
} catch (PDOException $se){
echo $se->getMessage();
}
}
tapi pas saya tambahkan mysqli_real_escape_string, outputnya error mas. jadi saya harus diganti pada bagian apanya mas?
di videonya berhasil mas, tapi disaya malah error, padahal kodenya sudah sama persis, cuma beda pada koneksi database-nya saja.
$query = $link->prepare("SELECT * FROM users WHERE username = ? AND password = ?"); var_dump($query->execute(array($nama, $pass)));
$query->fetch(PDO::FETCH_ASSOC); $pass = password_hash($pass, PASSWORD_DEFAULT); $query = "INSERT INTO users (username, password) VALUES ('$nama', '$pass' )";
try { $link->query($query); $link->setAttribute (PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo 'Berhasil'; } catch (PDOException $se){ echo $se->getMessage(); } }
saya berhasil mas, ternyata harus pake sql ijeksi PDO