Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1

    difficoltà con istruzione where campo1= ... and campo1=...

    buon inizio settimana a tutti.

    normalmente interrogo una select in cui ... WHERE campo1 ='id_tipologia' ...

    ora ho l'esigenza di dover effettuare qualcosa del tipo ... WHERE tipo_struttura='id_tipologia' AND tipo_struttura='14' ... solo se ho in querystring il valore == 1

    allora sto cercando di procedere in questo modo:

    Codice PHP:
    if(isset($_GET['tipologia']) == '1'){

    $rs mysql_query("SELECT * FROM tab1 WHERE tipo_struttura='2' AND tipo_struttura='14' AND campo2 <> '#' ORDER BY campo3 LIMIT $first$x_pag");
    $nr mysql_num_rows($rs);
    }

    else{

    $rs mysql_query("SELECT * FROM tab1 WHERE tipo_struttura='".$_GET['tipologia']."' AND campo2 <> '#' ORDER BY campo3 LIMIT $first$x_pag");
    $nr mysql_num_rows($rs);

    ma ottengo solo i risultati del primo "tipo_struttura"

    dove erro???

    :master:
    ---------------------------
    danielix05

  2. #2
    Ti consiglio di iniziare leggendo il manuale ufficiale:

    http://www.php.net/isset

    Con particolare attenzione al valore restituito da isset().

    Inoltre dovresti leggere con molta attenzione anche:

    http://www.php.net/manual/en/securit...-injection.php
    http://php.html.it/guide/lezione/2986/sql-injections/

  3. #3

    primo punto

    ciao filippo

    andiamo per gradi...

    un'interrogazione come penso io si può fare??? ottenere la stampa prima di un gruppo con stesso id nel campo1 e poi di un secondo gruppo con altro id sempre presente nel campo1?

    probabilmente inserendo come discriminante
    codice:
    if($_GET['query'] == 'id_query'){...
    e non "isset"...

    grazie.
    ---------------------------
    danielix05

  4. #4

    nessuno mi aiuta???

    ---------------------------
    danielix05

  5. #5
    Una cortesia: potresti postare la struttura del DB e spiegare un minimo cosa contiene la colonna tipo_struttura??

    Spiegami anche se la query la effettui su di una sola colonna oppure su due.

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  6. #6

    ciao alcio74

    partiamo dalla query
    Codice PHP:
    if($_GET['tipo'] == '155'){
    $tipology $_GET['tipo'];


    $rs mysql_query("SELECT * FROM tab WHERE tipologia='".$tipology."' AND tipologia='2' AND campo3 <> '#' ORDER BY campo4");
    $nr mysql_num_rows($rs);
    }

    else{
    ....

    ...quindi...

    1. il db contiene almeno 13 colonne... una di esse si chiama "tipologia" e contiene valori INT,3

    2. vorrei che, se la tipologia in get è = a 155 la select restituisca tutti gli esercizi con id tipologia = 155 più gli esercizi con id tipologia = 2

    ps= la colonna "tipo_struttura" è, in questo esempio, chiamata "tipologia"
    ---------------------------
    danielix05

  7. #7
    Credo devi usare OR e non AND.
    Ciao!

  8. #8
    si con OR funziona, ma io avrei bisogno che restituisca sia un valore che l'altro

    quindi vorrei capire se si può utilizzare AND
    ---------------------------
    danielix05

  9. #9
    ma scusa, il campo "tipologia" della tabella può avere un solo valore, o a o b.

    se tu vuoi estrarre tutti i campi che hanno valore a o b, allora devi usare OR.

    AND si usa per esempio se in una tabella vuoi estrarre tutti i valori in cui tipologia = a e prezzo = 100, per esempio.

    ma cosi, con OR ti estrae tutti i campi in cui tipologia è a OR b...
    Ciao!

  10. #10
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    io farei così... togli il if/else e scrivi

    Codice PHP:
    $struttura=(isset($_GET['tipologia']))?$_GET['tipologia']:2;
    $rs mysql_query("SELECT * FROM tab1 WHERE (tipo_struttura='$struttura' OR tipo_struttura='14') AND campo2 != '#' ORDER BY campo3 LIMIT $first$x_pag");
    $nr mysql_num_rows($rs); 
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

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.