• User Attivo •

    contatore nel motore di ricerca

    questo è il motore di ricerca e funziona bene, cioè mi trova i record cercati e me li mette in elenco uno sopra l'altro, qui ho postato solo la query:

    [PHP]
    <?
    if ($search==1){
    if ($stato_ordine){
    $search_stato_ordine="AND stato_ordine like "".$stato_ordine.""";
    }
    $query="SELECT * FROM protocollo_ordini
    WHERE (id_protocolli_ordini>0 ".$search_stato_ordine.")";
    $ris_query=mysql_query($query, $conn);
    }
    ?>
    [/PHP]

    ora però vorrei aggiungere un contatore dei record trovati dopo la ricerca, ho fatto così ma anziche darmi il numero dei record trovati mi da un numero totali dei record anche quelli non cercati:

    [PHP]
    <?php
    $result = mysql_query("SELECT * FROM protocollo_ordini WHERE (id_protocolli_ordini>0 ".$search_stato_ordine." = 'In lavorazione') ");
    $nr_in_lavorazione = mysql_num_rows($result);
    ?>
    [/PHP]


  • Consiglio Direttivo •

    [php]<?php
    $result = mysql_query("SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine = 'In lavorazione'");
    $nr_in_lavorazione = mysql_num_rows($result);
    ?>[/php]

    prova 😄

    per come era prima risultava

    [PHP]....SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine like ".$stato_ordine." = 'In lavorazione'.....[/PHP]
    c'era qualche chiamata di troppo 😄


  • User Attivo •

    purtroppo mi da questo errore:

    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /web/htdocs/www.sito.it/home/cartella/include_case1_cerca_protocollo_ordini.php on line 306


  • Consiglio Direttivo •

    ricontrolla l'argomento.....ci deve essere qualcosa che non va...


  • User Attivo •

    ho fatto così:

    [PHP]
    <?php
    $result = mysql_query("SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine like ".$stato_ordine." = 'In lavorazione'");
    $nr_in_lavorazione = mysql_num_rows($result);
    $result = mysql_query("SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine like ".$stato_ordine." = 'In attesa'");
    $nr_in_attesa = mysql_num_rows($result);
    $result = mysql_query("SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine like ".$stato_ordine." = 'Completato'");
    $nr_completato = mysql_num_rows($result);
    $totale = $nr_in_lavorazione+nr_in_attesa+$nr_completato;
    ?>
    [/PHP]


  • User Attivo •

    facendo in quest'altro modo non mi da errore ma mi stampa tutti i record del db e non solo quelli del risultato della ricerca come vorrei io:

    [PHP]
    <?php
    $result = mysql_query("SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine = 'In lavorazione'");
    $nr_in_lavorazione = mysql_num_rows($result);
    $result = mysql_query("SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine = 'In attesa'");
    $nr_in_attesa = mysql_num_rows($result);
    $result = mysql_query("SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine = 'Completato'");
    $nr_completato = mysql_num_rows($result);
    $totale = $nr_in_lavorazione+nr_in_attesa+$nr_completato;
    ?>
    [/PHP]


  • Consiglio Direttivo •

    Normale....fai la somma di tutti i risultati possibili così 😉

    se li vuoi singolarmente fai degli if


  • User Attivo •

    niente non sono capace a farlo, ho fatto così ma mi da errore:

    [PHP]
    if (stato_ordine = 'In lavorazione'){
    $nr_in_lavorazione = mysql_num_rows($result);
    }
    [/PHP]


  • User Attivo •

    ho provato anche così, non mi da errore, ma non mi da neanche il risultato che vorrei:

    [PHP]
    <?php
    if ($result = mysql_query("SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine = 'In lavorazione'")){
    $nr_in_lavorazione = mysql_num_rows($result);
    }
    elseif ($result = mysql_query("SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine = 'In attesa'")){
    $nr_in_attesa = mysql_num_rows($result);
    }
    elseif ($result = mysql_query("SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine = 'Completato'")){
    $nr_completato = mysql_num_rows($result);
    }
    ?>
    [/PHP]


  • Consiglio Direttivo •

    [php]
    <?php
    $result = mysql_query("SELECT * FROM protocollo_ordini WHERE id_protocolli_ordini>0 AND stato_ordine = '".$stato_lavoro."'"))
    $nr = mysql_num_rows($result);
    echo "n. ordini ".$stato_lavoro.": ".$nr."";
    ?>
    [/php]
    ma non dovresti farlo così XD?


  • User Attivo •

    Grazie, 🙂
    sei un'amico

    scusa, una curiosità, ma che cos'è XD?


  • User Attivo •

    .


  • Consiglio Direttivo •

    @prinzart said:

    scusa, una curiosità, ma che cos'è XD?
    mali vizi che mi porto dietro dal troppo utilizzo del messenger.....è una faccina 😉