L'uso dell'error-control-operator è fortemente sconsigliato a meno che tu non sia consapevole di ciò che tu stia facendo.

L'uso del di mysql_* è ancor più fortemente sconsigliato. Ti consiglio di passare a PDO e di iniziare a fare uso di prepared statements.

Usa var_dump sulle funzioni che stai chiamando e vedi cosa ti danno.