El problema es que estás usando bind_param función en MySQL y no el $stmt variables.
El problema está en esta línea:
$stmt = $mysqli -> prepare("INSERT INTO `user`(`id_user`, `login`,`password`,`email`,`added`,`ip`) VALUES('', ? , ? , ? , now(), ?)");
$stmt = $mysqli -> bind_param("ssss", $login, $password, $email, $ip);
En lugar de escribir:
$stmt = $mysqli->bind_param("ssss", $login, $password, $email, $ip);
Debe escribir:
$stmt = $stmt->bind_param("ssss", $login, $password, $email, $ip);
Desde el bind_param El método solo está disponible en mysqli_stmt clase. y no el mysqli .
Consulte la documentación aquí .