Sono novizio con le librerie PDO. Sto lavorando all'ambiente di sviluppo con mysql come database. Sono in grado di scorrere le mie query utilizzando la funzione di preparazione ed esecuzione mentre si utilizza "?" segnaposto e anche metodo bindParam durante l'utilizzo di segnaposto con nome (es: ": colonna").Come sappiamo che il PDO sta sfuggendo alle iniezioni SQL?
Dopo questo tentativo, ho provato a vedere se PDO esegue qualsiasi tipo di escape inserendo virgolette per disinfettare la query come mysql_real_escape_string. Sto cercando di vedere l'aspetto della query, ma tutto quello che ottengo è la dichiarazione che è stata passata nell'istruzione preparativa, ma non la query che sarebbe stata eseguita.
Ho provato a var_dump il $ result-> execute() e $ result-> fetch() ma l'istruzione execute mi dà il sql della mia istruzione preparata con i segnaposto mentre l'istruzione fetch mi dà il risultato di quella query.
C'è un modo per esaminare la query di ricerca che verrà eseguita, o almeno come i parametri dovrebbero apparire prima di eseguire la query ??
Spero di essere chiaro con la mia domanda. : |
ti preoccupi troppo. Le dichiarazioni preparate sfuggono al tuo input al 100%. Se è necessario vedere come appare la query finale, è necessario impostare un registro delle query del database. – netcoder
@netcoder Le istruzioni preparate non sfuggono a nulla (se non in modalità compatibile). E non c'è nulla di nuovo nel registro delle query –
@Col. Shrapnel: Beh tecnicamente sì, anche se puoi esprimerlo nel modo desiderato. Per quanto riguarda "non c'è nulla di nuovo nel registro delle query", semplicemente non capisco cosa significhi ... – netcoder