Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    8

    Filtro su un resource aperto

    Ciao a tutti, spiego in due parole quello che devo fare, ho un resource aperto su una determinata tabella, di suguito all'apertura di questo resource gli devo applicare un filtro, ma non so come fare . Qui di seguito ho un breve esempio di quello che dovrei applicare, so che in questo specifico caso potrei aggiungere la condizione del LastName alla prima query ma come detto in precedenza è un esempio di quello che dovrò applicare a una serie di tabelle.

    $MsSQLQuery="SELECT * FROM t_Cast WHERE Name like 'JOHN%'";
    $resPassatoA = MSSQL_QUERY($MsSQLQuery);

    $MsSQLQuery="SELECT * FROM t_Cast WHERE LastName like 'tra%'";
    $resPassatoB = MSSQL_QUERY($MsSQLQuery);

    for ($i = 0 ; $i < mssql_num_rows($resPassatoB) ; ++$i) {
    $line = mssql_fetch_row($resPassatoB);
    print($i." ".$line[1]." ".$line[2]."
    ");
    }


    Spedo di essermi spiegato bene
    Ciao mirco

  2. #2
    una volta che hai un resource, puoi leggerne il contenuto in diversi modi. in ogni caso ricorda che questa lettura consiste nell'estrarre dei records (ossia singole righe/inserimenti). percui non puoi rileggere il resource una seconda volta. l'estrazione avviene con funzioni del tipo:

    $riga = mssql_fetch_assoc($resource);
    $riga = mssql_fetch_row($resource);

    il primo ti restituisce un array associativo, percui potrai accedere al 'Name' della tua riga estratta in questo modo:

    echo $riga['Name'];

    il secondo modo ti restituisce un array a chiave numerica, percui:

    echo $riga [0];

    (ammesso che Name sia il primo campo definito).

    -------------------------------------------------------

    detto questo, puoi ciclare questa estrazione di righe e controllare una ad una quelle che contengono il LastName desiderato:

    $MsSQLQuery="SELECT * FROM t_Cast WHERE Name like 'JOHN%'";
    $resPassatoA = MSSQL_QUERY($MsSQLQuery);

    while ( $riga = mssql_fetch_assoc($resPassatoA))
    {
    if ( substr($riga['LastName'],0,3) == 'tra' )
    {
    echo " Ho trovato: ".$riga['Name']." - ".$riga['LastName']."
    ";
    }
    }

    ossia, il while continua finche' non trovando più righe, l'operazione innescata da mssqlfetchassoc ritorna il valore false. all'interno del while applico il secondo filtro, mi chiedo se le prime tre lettere del lastname della riga estratta non coincidano con 'tra'.
    se cio' accade riporto il mio successo.

    scusa se ho rispiegato tutto ma non avevo capito dove ti fermavi.
    si vivono molte vite e si muore una volta sola

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    8
    grazie seguo il consiglio

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.