• 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 😉