Estamos mais do que provavelmente lidando com strings aqui, então as variáveis em seus valores precisam ser citadas.
WHERE ens_cin='$login' AND ens_pass='$password'";
Além disso, apenas usar o PDO sozinho não significa que você está seguro contra injeção de SQL.
Um insight:
Certifique-se de que você está realmente se conectando através do PDO e não do
mysqli_
. Eu vejo esses tipos de perguntas com frequência. Se for esse o caso, essas diferentes APIs do MySQL não se misturam.
Agora isso:
$password=$_GET["password"];
Passar uma senha através de um GET também não é seguro; você não sabe quem pode estar "ouvindo". Você deve estar usando POST. Espero também que você esteja usando um hash e não um texto simples para armazenamento de senhas.
Nota lateral:Certifique-se de que você está realmente usando GET e não misturado com POST, caso isso venha de um formulário HTML.
Você provavelmente não está verificando erros.
Adicione
$idconnex->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
logo após a conexão ser aberta. Adicionar relatório de erros para o topo do(s) seu(s) arquivo(s), o que ajudará a encontrar erros.
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
// rest of your code
Nota: O relatório de erros deve ser feito apenas na preparação e nunca na produção.