Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080

    Sintassi per query parametrica

    Ho questa query banale
    codice:
     SELECT * FROM `articoli` WHERE codice like '%9%'
    E la query funziona correttamente

    Essendo che dovrà essere parametrica se faccio
    codice:
    SELECT * FROM articoli WHERE codice like= '%?%'
    oppure
    codice:
    SELECT * FROM articoli WHERE codice like= '%'?'%'
    Non funziona, sicuramente è un problema di sintassi!
    Grazie

  2. #2
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Ma parli di binding sui prepared statement ?
    In questo caso fai così (con mysqli):
    Codice PHP:
    $par "%9%";
    $sql "SELECT * FROM articoli WHERE codice like= ? ";
    $stmt $mysqli->prepare($sql);
    $stmt->bind_param("s"$par);
    $stmt->execute(); 
    Se usi PDO, la cosa è simile

  3. #3
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    Esatto! Solo che per il like non serve = (che tra l'altro avevo messo anche io sopra)
    codice:
             $codice = "%".htmlentities($_POST['codice']."%");
         $stmt = $connessione->prepare("SELECT * FROM articoli WHERE codice like ?");
    $stmt->bind_param("s", $codice);
    $stmt->execute();
    Tnx

  4. #4
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    hai ragione...ho copia-incollato senza farci caso

Tag per questa discussione

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 © 2024 vBulletin Solutions, Inc. All rights reserved.