sql >> Databáze >  >> RDS >> Mysql

přihlašovací relace byla po obnovení zničena

mysqli_real_escape_string() VYŽADUJE musíte mít aktivní/navázané připojení k DB. Protože děláte m_r_e_s() zavolejte PŘEDTÍM, než se připojíte, jednoduše dostanete zpět booleovskou hodnotu FALSE, což znamená selhání. Takže zahazujete své „uvozované“ hodnoty.

Booleovské falešné hodnoty vložené do řetězce se prostě převedou na prázdné řetězce, takže vaše dotazy začnou vypadat takto

SELECT ... WHERE username=''
                           ^---see the boolean false in there?

Vaše sekvence kódu by měla být:

session_start();
connect_to_db();
prepare_variables();
do_query();

A protože používáte mysqli, proč stejně ručně escapujete proměnné? Můžete použít připravený příkaz + zástupné symboly a problém úplně obejít.



  1. Jak vložit velké množství dat do databáze sqlite v systému Android

  2. Wordpress kombinovat dotazy

  3. Srovnání mezi pluginem MySQL Clone a Xtrabackup

  4. T-SQL trim   (a další nealfanumerické znaky)