mysqli_real_escape_string()
VEREIST u een actieve/vastgestelde verbinding met de database hebt. Aangezien je de m_r_e_s()
. doet call VOORDAT je verbinding maakt, krijg je gewoon boolean FALSE terug om een mislukking aan te duiden. Dus je gooit je "geciteerde" waarden weg.
Booleaanse valse waarden die in een tekenreeks worden ingevoegd, worden gewoon omgezet in lege tekenreeksen, dus uw zoekopdrachten beginnen eruit te zien als
SELECT ... WHERE username=''
^---see the boolean false in there?
Uw codereeks moet zijn:
session_start();
connect_to_db();
prepare_variables();
do_query();
En aangezien je mysqli gebruikt, waarom ontsnap je dan toch handmatig aan variabelen? U kunt gewoon een voorbereide verklaring + tijdelijke aanduidingen gebruiken en het probleem volledig omzeilen.