Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 28

Discussione: Contare gli id

  1. #1
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766

    Contare gli id

    raga come posso contare gli id di questo codice?
    Codice PHP:
                    <?
    include("config.php");
    $sql =mysql_query("select * from hotel order by id asc");
    while (
    $arr=mysql_fetch_row($sql)) {
        
    $ido=$arr[0];
        
    $nome=$arr[1];
        
    $stelle=$arr[2];
        
    $localita=$arr[3];
        
    $dir=$arr[4];
        
    $email=$arr[6];
        
    $ordine=$arr[8];
        
    $foto=$arr[9];
        
    $link=$arr[11];

    $sql2=mysql_query("select * from offerte where hotel='$ido'");
        unset(
    $ido1);
        while (
    $arr1=mysql_fetch_row($sql2)) {
            
    $ido1++;
            
    $titolo=$arr1[1];
            
    $sotto=$arr1[2];
            
    $prezzo=$arr1[3];
            
    $tratt=$arr1[4];
            
    $pacco=$arr1[6];

        }
    }
    ?>
    devo vedere quante offerte ho inserito in totale

  2. #2
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766

    Re: Contare gli id

    io sto provando cosi ma non va:
    Codice PHP:
    <? 
    $conto
    =mysql_query("SELECT id FROM offerte");
    $conteggio mysql_result($conto,0,"count(id)");
    echo 
    "$conteggio"
    ?>

  3. #3

    Re: Contare gli id

    Originariamente inviato da Tr|k`Tr4k
    devo vedere quante offerte ho inserito in totale
    Nel tuo codice vedo dei SELECT ....

    Comunque dopo il punto dove inserisci tanto per intenderci dopo la query INSERT into offerte...
    Aggiungi questo pezzo di codice (scrivo anche la query INSERT)
    codice:
    $query="INSERT into offerte values('$1','$2','$3');";
    $id=mysql_query(query) or die("query $query non eseguita");
    $count=mysql_affected_rows();
    printf("%d righe inserite\n", $count"""");
    Se per qualsiasi ragione non può fare a caso tuo questo codice prova quest'altro:
    codice:
    $query="SELECT*from offerte where hotel='$ido';";
    $id=mysql_query(query) or die("query $query non eseguita");
    printf("Numero offerte: $d\n", mysql_num_rows($id));

  4. #4
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766

    Re: Re: Contare gli id

    Originariamente inviato da rel_style
    Nel tuo codice vedo dei SELECT ....

    Comunque dopo il punto dove inserisci tanto per intenderci dopo la query INSERT into offerte...
    Aggiungi questo pezzo di codice (scrivo anche la query INSERT)
    codice:
    $query="INSERT into offerte values('$1','$2','$3');";
    $id=mysql_query(query) or die("query $query non eseguita");
    $count=mysql_affected_rows();
    printf("%d righe inserite\n", $count"""");
    un altro metodo non c'e'??

  5. #5
    Avevo postato il codice poi l'ho modificato riguarda la mia prima risposta

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    460
    Non mi e' assolutamente chiaro cosa c'entri il mysql_affected_rows() con la domanda: lui vuole sapere quante offerte (e quindi quante tuple) ci sono nel suo result set. Per entrambe devi usare la sintassi SELECT COUNT(...), e nello specifico:

    Per la prima query, basta scrivere:

    SELECT COUNT(*) FROM hotel

    Nota che ho eliminato l'ordinamento visto che per contare non serve a niente (anche se penso che l'ottimizzatore la faccia gia' di suo). Per la seconda:

    SELECT COUNT(*) FROM offerte WHERE hotel='$ido'

    mysql_affected_rows() serve per sapere quante righe sono state 'toccate' dall'ultimo statement SQL, e nulla ha a che vedere con i conteggi; dopo una INSERT, il metodo in questione puo' restituire solo o uno o zero, rispettivamente nei casi di inserimento effettuato correttamente o di fallimento dell'inserimento (ad esempio per violazione di uno dei vincoli dello schema).
    There are 10 types of people in the world - those who understand binary and those who don't.

  7. #7
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    Originariamente inviato da rel_style
    Avevo postato il codice poi l'ho modificato riguarda la mia prima risposta
    ho provato come dici tu ma niente ho dovuto aggiungere mysql_query alla query...
    Codice PHP:
    <?

    $query
    =mysql_query("SELECT*from offerte where hotel='$ido'");
    $id=mysql_query(query) or die("query [b]$query[/b] non eseguita");
    printf("Numero offerte: [b]$d[/b]\n"mysql_num_rows($id));
    ?>
    e mi esce:
    query Resource id #34 non eseguita

    Di sicuro non sono 34 ma molte di piu'!!

  8. #8
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Segui i suggerimenti di frinkia.

  9. #9
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    Originariamente inviato da nicola75ss
    Segui i suggerimenti di frinkia.
    e quindi devo fare 2 query, ma mi sa che sbaglio ancora qualcosina:
    Codice PHP:
    <?

    $queryhotel
    =mysql_query("SELECT COUNT(*) FROM hotel");
    $queryofferte=mysql_query("SELECT COUNT(*) FROM offerte WHERE hotel='$ido'");
    $id=mysql_query(query) or die("query [b]$queryofferte[/b] non eseguita");
    printf("Numero offerte: [b]$d[/b]\n"mysql_num_rows($id));
    ?>

    esce sempre:
    query Resource id #35 non eseguita

  10. #10
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    $query = mysql_query("select count(*) as quanti from hotel");

    $num = mysql_result($query,0,'quanti');
    echo $num;

    Fai attenzione nella query all'as quanti.
    In pratica si crea un alias per poter poi recuperare il conteggio tramite un nominativo del campo.


    Poi fai la stessa cosa per l'altra query.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.