Visualizzazione dei risultati da 1 a 2 su 2

Discussione: problemi query

  1. #1

    problemi query

    Ciao a tutti, ho un problema con una query che non reisco a risolvere:
    Ho un piccolo form con un campo nascosto che vale 'azienda' e una select con l'id della regione
    <form name="azienda" id="azienda" action="?azione=azienda" method="post">
    <input type="hidden" name="azienda" value="azienda" />
    <select name="l1" id="l1" onchange="loading()">
    <option value="" selected="selected">Tutte le regioni</option>
    <?
    for($x=0;$x<count($l1);$x++){
    ?>
    <option value="<?= $l1[$x]['idregione']?>"><?=$l1[$x]['nomeregione']?></option>
    <?
    }
    ?>
    </select>
    <input type="submit" />
    </form>

    Poi recupero i dati:
    $regione=$_POST['l1'];
    $tipo=$_POST['azienda'];

    E faccio la query:

    $sql='SELECT *,nomeregione FROM attivita INNER JOIN regioni ON ATTIVITA.att_idregione=REGIONI.idregione WHERE att_idregione='.$regione.' AND att_tipo='.$tipo.' ORDER BY att_id desc ';
    $dati=mysql_query($sql,$miaconn) or die ($sql);

    Non la esegue e mi fa or die e stampa questo:

    SELECT *,nomeregione FROM attivita INNER JOIN regioni ON ATTIVITA.att_idregione=REGIONI.idregione WHERE att_idregione=2 AND att_tipo=azienda ORDER BY att_id desc

    Perchè non funziona? se tolgo dalla query ""AND att_tipo='.$tipo.' "" funziona correttamente.
    Grazie ciao.

  2. #2
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    Prova ad inserire i valori all'interno della tua query tra apici, es. att_tipo='azienda'.
    Ti consiglio inoltre di seguire una guida sull' sql injections, le variabili non dovresti passarle pari pari come le ricevi dall'input utente.


    Ciao

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.