Jump to content
FBI

[Resolvido] PHP com SQLite

Recommended Posts

FBI

Alguém aqui com experiência na utilização de PHP com SQLite através do PDO?

Eu estou a tentar fazer uma Query de Contagem a uma base de dados, mas está-me a dar problemas depois quando tento usar o valor como inteiro, ou seja :

$sql = "SELECT COUNT(*) FROM phrases WHERE phrase LIKE 'HBA' AND answear NOT NULL";
$result = $db->query($sql);

if($result > 0).....

Quero fazer algo deste género, mas não consigo tirar o valor inteiro da variável $result, alguém me explica como o consigo fazer?

Obrigado desde já...

Share this post


Link to post
Share on other sites
taviroquai

em vez de "AND answear NOT NULL"

experimenta "AND answer IS NOT NULL"

Share this post


Link to post
Share on other sites
FBI

Boas, a query está correcta... Eu já testei na linha de comandos do SQLite3, o problema é mesmo no php, tirar o count!

Ela dá 1... Ou seja eu quero obter esse 1 no php...

Share this post


Link to post
Share on other sites
pmg

Experimenta assim (não testado):

$sql = "select count(*) as n from phrases where phrase = 'HBA' and answear not null";
$result = $db->query($sql);

if ($result['n'] > 0) /* ... */;

Mais informações no manual.

Edited by pmg

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Share this post


Link to post
Share on other sites
MASNathan

if ($result['n'] > 0) /* ... */;

não tenho a certeza se $result['n'] está correcto mas se não der não á nada como fazer um var_dump do $result para ver qual a estrutura da array

Share this post


Link to post
Share on other sites
pmg

$sql = "select count(*) as n from phrases where phrase = 'HBA' and answear not null";

não tenho a certeza se $result['n'] está correcto

Para aumentar as hipóteses do $result['n'] estar correcto é que eu pus "select count(*) as n".


What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Share this post


Link to post
Share on other sites
MASNathan

Para aumentar as hipóteses do $result['n'] estar correcto é que eu pus "select count(*) as n".

eu vi isso...

não sei é se o $result vem assim $result[0]['n'] = blablabla ou $result['n'] = blablabla.

desculpa lá se te ofendi :(

Share this post


Link to post
Share on other sites
FBI

Obrigado pmg ;) Não funcionou como tu disseste, mas andava lá perto ;)

$sql = "select count(*) as n from phrases where phrase = 'HBA' and answear not null";
$result = $db->query($sql);//Conta o numero de frases iguais á inserida 

$result2 = $result->fetchAll();
foreach($result2 as $tot_table) {
$count = $tot_table['n'];
}

Tá aqui como o consegui para vos tirar as duvidas também ;)

Obrigado a todos

Share this post


Link to post
Share on other sites
pmg

desculpa lá se te ofendi :(

Não ofendeste nada. Eu é que não percebi o alcance da tua mensagem.

Pareceu-me que estarias a dizer que o "count(*)" não iria para o índice ['n'].

Ele vai para o indice ['n'], mas, como sugeriste, precisa dum índice antes para funcionar.

Eu é que te devo um pedido de desculpas.

Desculpa o mal-entendido, MASNathan.

Tá aqui como o consegui para vos tirar as duvidas também ;)

Obrigado pelo feedback.

Ainda bem que resolveste o teu problema.


What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Share this post


Link to post
Share on other sites
MASNathan

Não ofendeste nada. Eu é que não percebi o alcance da tua mensagem.

Pareceu-me que estarias a dizer que o "count(*)" não iria para o índice ['n'].

Ele vai para o indice ['n'], mas, como sugeriste, precisa dum índice antes para funcionar.

Eu é que te devo um pedido de desculpas.

Desculpa o mal-entendido, MASNathan.

Na boa :P

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.