FBI Posted July 4, 2012 at 02:03 AM Report Share #467193 Posted July 4, 2012 at 02:03 AM 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á... Link to comment Share on other sites More sharing options...
taviroquai Posted July 4, 2012 at 02:35 AM Report Share #467195 Posted July 4, 2012 at 02:35 AM em vez de "AND answear NOT NULL" experimenta "AND answer IS NOT NULL" Link to comment Share on other sites More sharing options...
FBI Posted July 4, 2012 at 02:38 AM Author Report Share #467196 Posted July 4, 2012 at 02:38 AM 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... Link to comment Share on other sites More sharing options...
pmg Posted July 4, 2012 at 08:04 AM Report Share #467202 Posted July 4, 2012 at 08:04 AM (edited) 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 July 4, 2012 at 08:05 AM 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! Link to comment Share on other sites More sharing options...
MASNathan Posted July 4, 2012 at 01:03 PM Report Share #467235 Posted July 4, 2012 at 01:03 PM 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 Link to comment Share on other sites More sharing options...
pmg Posted July 4, 2012 at 02:17 PM Report Share #467253 Posted July 4, 2012 at 02:17 PM $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! Link to comment Share on other sites More sharing options...
MASNathan Posted July 4, 2012 at 02:22 PM Report Share #467256 Posted July 4, 2012 at 02:22 PM 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 😞 Link to comment Share on other sites More sharing options...
FBI Posted July 4, 2012 at 02:59 PM Author Report Share #467273 Posted July 4, 2012 at 02:59 PM 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 Link to comment Share on other sites More sharing options...
pmg Posted July 4, 2012 at 03:42 PM Report Share #467281 Posted July 4, 2012 at 03:42 PM 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! Link to comment Share on other sites More sharing options...
MASNathan Posted July 4, 2012 at 03:54 PM Report Share #467285 Posted July 4, 2012 at 03:54 PM 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 😛 Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now