Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [PHP - DB] Differenza tra mysqli_real_escape_string() e mysql_real_escape_string()?

    Che differenza c'è tra le due funzioni?
    Ho cercato su google e non ho trovato la differenza..
    Perché in mysqli real escape bisogna inserire anche la "connessione" oltre la "stringa"?

    Cosa mi consigliate di utilizzare per passare i dati al db ed evitare l' SQL Injection? (mysqli real escape string, mysql real escape string, htmlentities o cosa?)

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2012
    residenza
    Dese (Venezia)
    Messaggi
    41
    Ciao mysql_real_escape_string dalla versione 5.5 è deprecata.
    Utilizza mysqli_real_escape_string, meglio ancora mysqli::real_escape_string quindi istanziando l'oggetto mysqli.
    http://it2.php.net/mysqli_real_escape_string

  3. #3
    Il nome della funzione per fare la procedura inversa qual è?
    Sapresti dirmi perché in mysqli_real_escape_string bisogna specificare anche la variabile con i parametri della connessione?

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,501
    Non fanno cose diverse, semplicemente tutte le istruzioni mysql_ sono deprecate e sui server con PHP aggiornato non funzionano più.

    Per le istruzioni mysqli_ devi specificare anche la variabile che definisce la connessione perché si può voler tenere aperte connessioni a più db contemporaneamente, così specifichi esplicitamente su quale db vuoi che la query sia eseguita.

    Nelle istruzioni mysql_ si poteva omettere perché in caso non fosse specificato si usava la connessione attiva, mysqli_ invece no.
    Ultima modifica di Alhazred; 23-04-2014 a 15:19

  5. #5
    Grazie mille

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.