Autore Topic: Get numero rows  (Letto 534 volte)

Offline paul78

  • Utente normale
  • ***
  • Post: 359
  • Respect: +1
    • Mostra profilo
    • Android Code
  • Sistema operativo:
    Linux - Windows
Get numero rows
« il: 29 Febbraio 2016, 20:47:22 CET »
0
Ciao a tutti!

Stò creando un'app. dove le persone possono inserire i commenti.
Ora nella listView oltre a far visualizzare gli utenti che hanno inserito il messaggio, vorrei far visualizzare anche il numero dei commenti inseriti ad ogni utente.

Vi facci un esempio!

Nell'app. ho utente1, utente2, utente3....

utente1 ha 2 commenti
utente2 ha 0 commenti
utente3 ha 5 commenti.

Per li momento nella listView faccio visualizzare solo il nome degli utenti, cioè:

utente1
utente2
utente3

io vorrei far visualizzare la listview in questo modo:

utente1 commenti: 2
utente2 commenti: 0
utente3 commenti: 5

Per il momenti per far visualizzare solo i nomi degli utenti nel php scrivo questo:
Codice (Java): [Seleziona]
<?php

$DB_USER='user';        
$DB_PASS='password';      
$DB_HOST='localhost';    
$DB_NAME='nome_db';
$mysqli = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);

if (mysqli_connect_errno()) {
   printf("Connect failed: %s\n", mysqli_connect_error());
   exit();
}

$mysqli->query("SET NAMES 'utf8'");

$sql="SELECT * FROM utenti";

$result=$mysqli->query($sql);
while($e=mysqli_fetch_assoc($result)){
     $output[]=$e;
}

print(json_encode($output));
$mysqli->close();

?>

Ora come faccio a far visualizzare il numero complessivo dei commenti?

Spero di essere stato chiaro!
Grazie in anticipo!
tutti possiamo programmare...basta volerlo!!!

Offline dev91

  • Utente junior
  • **
  • Post: 51
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Note 4
Re:Get numero rows
« Risposta #1 il: 01 Marzo 2016, 15:37:52 CET »
0
Ciao, la tua domanda si riferisce a quale query scrivere per trovare il numero di commenti di un certo utente? Se si, dovresti spiegare la struttura della tua tabella dei commenti, ma in generale, se la colleghi agli utenti tramite un campo idUtente, la query da fare è: SELECT idUtente, COUNT(*) FROM Commenti GROUP BY idUtente.

Se invece vuoi il numero totale di commenti, devi semplicemente eseguire: SELECT COUNT(*) FROM Commenti
« Ultima modifica: 01 Marzo 2016, 15:49:19 CET da dev91 »

Offline paul78

  • Utente normale
  • ***
  • Post: 359
  • Respect: +1
    • Mostra profilo
    • Android Code
  • Sistema operativo:
    Linux - Windows
Re:Get numero rows
« Risposta #2 il: 01 Marzo 2016, 20:20:13 CET »
0
ciao! ho risolto in un'altro modo.

praticamente alla tabella utenti ho aggiunto una colonna in + di nome "commenti" "VARCHAR", in questo modo tutto gli utenti che scrivono un nuovo messaggio automaticamente aggiunge il valore "0" alla colonna commenti.

dopo di che ad ogni commento converto la stringa commenti in int per aggiungere un volore 1.

Dopo avere aggiunto il valore 1 all'int lo riconverto in stringa per poi applicare l'update alla row selezionata!

ho provato ad applicare l'update in questo modo:

Codice (Java): [Seleziona]
UPDATE utenti SET commenti=commenti+1 WHERE username=?
ma con il valore int in questo modo non mi assegnava nessun valore in più, mentre dando il valore varchar inizialmente per poi convertirlo in int per sommarlo mi sono trovato benissimo!

Grazie mille di tutto! :-D
tutti possiamo programmare...basta volerlo!!!