Du bruger enten PDO eller du bruger mysql-udvidelsen, brug ikke begge på samme tid. mysql_real_escape_string
er en funktion af mysql-udvidelsen. Det kræver en forbindelse til databasen for at fungere. Når den kalder den, forsøger den at etablere en forbindelse, hvis du ikke tidligere har oprettet en ved hjælp af mysql_connect
, gæstimating de påkrævede login-legitimationsoplysninger. På din lokale maskine har du tilsyneladende ingen adgangskodebeskyttelse og kontonavnet for MySQL-brugeren er det samme som det navn webserveren kører under, så det sker heldigvis. På produktionssystemet er legitimationsoplysningerne forskellige, og det kan ikke etablere en forbindelse.
Stop med at bruge mysql_real_escape_string
med PDO. Brug enten PDO's strengciteringsfunktioner eller bedre, brug forberedte og parametriserede forespørgsler og bind
dine værdier
.