Visualizzazione dei risultati da 1 a 10 su 10

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2013
    Messaggi
    13
    Perfetto: ora tutto mi funziona. Funzionava anche lo script precedente aggiungendo le due precisazioni mancanti. Poi, come da suggerimento, ho provato a passare a mySQLi: visto che devo imparare meglio usare direttamente i comandi nuovi... Grazie ancora!

    Codice PHP:
    <?php
    $connessione
    =mysqli_connect("localhost","username","","my_username");
    // Controllo la connessione
    if (mysqli_connect_errno($con))
      {
      echo 
    "Connessione fallita a MySQL: " mysqli_connect_error();
      }

    $inserimento="
    INSERT INTO tabella_esempio (nome, indirizzo)
    VALUES('
    $_POST[nome]','$_POST[indirizzo]')
    "
    ;

    // Controllo inserimento dati in tabella la connessione
    if (!mysqli_query($connessione,$inserimento))
      {
      die(
    'Errore con inserimento : ' mysqli_error($connessione));
      }
    echo 
    "1 record aggiunto";

    mysqli_close($connessione);
    ?>

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Bene, ora un altro paio di cose.
    Quote Originariamente inviata da nome Visualizza il messaggio
    Codice PHP:
    $connessione=mysqli_connect("localhost","username","","my_username");
    // Controllo la connessione
    if (mysqli_connect_errno($con)) 
    Occhio, che la variabile l'hai chiamata $connessione, non $con, correggi.

    Codice PHP:
    $inserimento="
    INSERT INTO tabella_esempio (nome, indirizzo)
    VALUES('
    $_POST[nome]','$_POST[indirizzo]')
    "

    Non usare mai direttamente i dati provenienti da un form e che andranno ad interagire con il database, potrebbe esserci del codice malevolo.
    Prima passa i dati alla funzione mysqli_real_escape_string()

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2013
    Messaggi
    13
    Corretta la prima cosa, mi sono bloccato sulla seconda: il passaggio che mi suggerisci con la funzione mysqli_real_escape_string() è corretto scritto così?

    Codice PHP:
    $inserimento=mysqli_real_escape_string($connessione,$inserimento); 
    Giusto per avere più consapevolezza, da cosa mi protegge di preciso questo passaggio? Quando parli di "codice malevolo" intendi dei caratteri che potrebbero essere male interpretati o altro?

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Alla funzione devi passarci i singoli dati, ad esempio così
    Codice PHP:
    $nome mysqli_real_escape_string($_POST['nome']);
    $indirizzo mysqli_real_escape_string($_POST['indirizzo']);

    $inserimento="INSERT INTO tabella_esempio (nome, indirizzo) VALUES('$nome','$indirizzo')"

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2013
    Messaggi
    13
    Se ho ben capito leggendo qua e là a proposito di questa funzione, il parametro della mia connessione lo avrei dovuto mettere qualora avessi usato mysql_real_escape_string() ma non è necessario in questo caso con mysqli_real_escape_string() ...

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