Это может быть просто личное предпочтение, но мне нравится быть более конкретным c с переменными связывания, и синтаксис, кажется, никогда не подводит меня.
$emailToken = $_GET['token'];
$sql = 'SELECT * FROM signup WHERE token = :token';
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':token', $emailToken, PDO::PARAM_STR);
$stmt->execute();
$message = $stmt->fetchAll();
построение строки с синтаксисом (никогда не сохраняйте код, подобный этому, это всего лишь тест)
$sql = "SELECT * FROM signup WHERE token = '" . $_GET['token'] . "'";
var_dump( $sql );
$stmt = $pdo->prepare($sql);
$stmt->execute();
$message = $stmt->fetchAll();
, тогда вы можете протестировать этот выведенный код в инструменте запросов, чтобы убедиться, что он синтаксически правильный.