Macro sc_error_message exibindo dados do BD ** RESOLVIDO**

Gostaria que a macro sc_error_message exibisse um dado do BD Mysql, neste caso o e-mail do administrado. Não sei se seria possível ou se estou errando na estrutura do código abaixo.
Alguém poderia me ajudar?

sc_error_message($sql = “SELECT email
FROM sec_users
WHERE priv_admin = ‘Y’”);

Bom dia Ruyter,

Dessa forma não dará certo. Sugestão:

$sql = "SELECT email
    FROM sec_users
    WHERE priv_admin = 'Y'");

sc_lookup(ds,$sql);

$_mensagem = {ds[0][0]};
sc_error_message($_mensagem);

Olá Kleyber
Obrigado pelo código, mas não consegui fazer funcionar. Acho que é a organização dentro da estrutura que já existe.
Se não for pedir muito segue a estrutura existente pra vc organiza-lo dentro dela (é para exibir a macro sc_error_message dentro do último else):
if(sc_logged_is_blocked()) { sc_error_exit(); }

$slogin = sc_sql_injection({login});
$spswd = sc_sql_injection(hash(“md5”,{pswd}));

$sql = "SELECT
active,
name,
email
FROM sec_users
WHERE login = $slogin
AND pswd = ".$spswd;
sc_lookup(rs, $sql);

if(count({rs}) == 0)
{
sc_log_add(‘login Fail’, {lang_login_fail} . {login});
sc_logged_in_fail({login});
sc_error_message({lang_error_login});
}
else if({rs[0][0]} == ‘Y’)
{
$usr_login = {login};
$usr_name = {rs[0][1]};
$usr_email = {rs[0][2]};
sc_set_global($usr_login);
sc_set_global($usr_name);
sc_set_global($usr_email);

}
else
{
sc_error_message({lang_error_not_active});
sc_error_exit();
}

Ruyter,

Pra te dar uma solução, preciso entender o seguinte; Por que você quer mostrar o email do administrador ao invés da mensagem padrão que o usuário não está ativo?

Alem de informar que deve entrar em contato com o administrador, oferecer um meio para este contato.

Então minha sugestão fica assim:

if(sc_logged_is_blocked()) { sc_error_exit(); }

$slogin = sc_sql_injection({login});
$spswd = sc_sql_injection(hash("md5",{pswd}));


$sql = "SELECT
      active,
      name,
      email
         FROM sec_users
         WHERE login = $slogin
      AND pswd = ".$spswd;
sc_lookup(rs, $sql);


if(count({rs}) == 0)
{
   sc_log_add('login Fail', {lang_login_fail} . {login});
   sc_logged_in_fail({login});
   sc_error_message({lang_error_login});
}
else if({rs[0][0]} == 'Y')
{
   $usr_login      = {login};
   $usr_name      = {rs[0][1]};
   $usr_email      = {rs[0][2]};
   sc_set_global($usr_login);
   sc_set_global($usr_name);
   sc_set_global($usr_email);
   
}
else
{
    $sql = "SELECT email
        FROM sec_users
        WHERE priv_admin = 'Y'");

    sc_lookup(ds,$sql);

    $_mensagem = {ds[0][0]};
   sc_error_message({lang_error_not_active}.' - '.$_mensagem);
   sc_error_exit();
}

Kleyber, então não era eu que estava errando na elaboração da estrutura do código não, continua dando este erro: Parse error: syntax error, unexpected ‘)’ in C:\Program Files\NetMake\v9\wwwroot\scriptcase\app\Meteorologia\app_Login\app_Login_apl.php on line 2009.
No arquivo e linha informado tem os dados abaixo (outro select idêntico):
linhas
2007 - $sql = “SELECT email
2008 - FROM sec_users
2009 - WHERE priv_admin = ‘Y’”);
2010 -
2011 -
O que será que está acontecendo?
Tentei mais algumas idéias e ainda não consegui.

Tira o parêntese do final do WHERE. Eu esqueci de tirar.

Beleza, agora sim, veja:
ERROR Desculpe, mas o usuário não está ativo! Contacte o administrador! - unifimes@meteorologia.myhoost.com
Obrigado, parabéns!

Agora acho que a informação para o usuário ficou melhor.

Show! Agora por gentileza, insira o texto ** RESOLVIDO** no título do teu primeiro post para que outros que possam passar pelo mesmo problema possam ver a resposta.