Visualizzazione dei risultati da 1 a 8 su 8

Hybrid View

  1. #1
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Che te ne fai del ciclo foreach e dell'addslashes?

    Per fare l'escape dei dati da inserire nel db si usa mysql_real_escape_string(), prova ad inserire i dati nel db facendo l'escape con questa funzione, quindi se nel form hai il campo veicolo, per l'insert userai

    Codice PHP:
    $sql "INSERT INTO commesse (veicolo, ...) VALUES ('".mysql_real_escape_string($_POST['veicolo']).', ... "); 

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    302
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Che te ne fai del ciclo foreach e dell'addslashes?

    Per fare l'escape dei dati da inserire nel db si usa mysql_real_escape_string(), prova ad inserire i dati nel db facendo l'escape con questa funzione, quindi se nel form hai il campo veicolo, per l'insert userai

    Codice PHP:
    $sql "INSERT INTO commesse (veicolo, ...) VALUES ('".mysql_real_escape_string($_POST['veicolo']).', ... "); 

    Ciao Alhazred,
    in realtà ho risolto con l'insert, il problema però mi è rimasto con la query di update, mi da errore

    questa la query

    codice:
    $sql = "UPDATE Commesse SET veicolo = UPPER ('$veicolo'), targa = UPPER ('$targa'), km = UPPER ('$km'), telaio = UPPER ('$telaio'), cliente = UPPER ('$cliente'), indirizzo = UPPER ('$indirizzo'), piva = ('$piva'), tel = ('$tel'), itr1 = UPPER ('$itr1'), itr2 = UPPER ('$itr2'), itr3 = UPPER ('$itr3'), itr4 = UPPER ('$itr4'), itr5 = UPPER ('$itr5'), itr6 = UPPER ('$itr6'), itr7 = UPPER ('$itr7'), itr8 = UPPER ('$itr8'), itr9 = UPPER ('$itr9'), itr10 = UPPER ('$itr10'), itr11 = UPPER ('$itr11'), itr12 = UPPER ('$itr12'), itr13 = UPPER ('$itr13'), itr14 = UPPER ('$itr14'), itr15 = UPPER ('$itr15'), for1 = UPPER ('$for1'), for2 = UPPER ('$for2'), for3 = UPPER ('$for3'), for4 = UPPER ('$for4'), for5 = UPPER ('$for5'), for6 = UPPER ('$for6'), for7 = UPPER ('$for7'), for8 = UPPER ('$for8'), for9 = UPPER ('$for9'), for10 = UPPER ('$for10'), for11 = UPPER ('$for11'), for12 = UPPER ('$for12'), for13 = UPPER ('$for13'), for14 = UPPER ('$for14'), for15 = UPPER ('$for15'), imp_1 = $imp_1, imp_2 = $imp_2, imp_3 = $imp_3, imp_4 = $imp_4, imp_5 = $imp_5, imp_6 = $imp_6, imp_7 = $imp_7, imp_8 = $imp_8, imp_9 = $imp_9, imp_10 = $imp_10, imp_11 = $imp_11, imp_12 = $imp_12, imp_13 = $imp_13, imp_14 = $imp_14, imp_15 = $imp_15, totale = $totale, n_tecnico = UPPER ('$n_tecnico'), data = STR_TO_DATE('$data', '%d/%m/%Y') WHERE id = '".$_SESSION['id']."'";
    questo l'errore

    codice:
    WHERE id = '66': You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''), km = UPPER ('125000'), telaio = UPPER ('1212121212'), cliente = UPPER ('PROV' at line 1
    Se volete che la funzione di un programma non venga scoperta dall'utente, descrivetela nella documentazione...

  3. #3
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Il fatto di usare la funzione mysql_real_escape_string() al posto di addslashes() te l'ho consigliato proprio perché dovrebbe risolverti quel problema.

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    302
    Ma sulla query di insert ho usato mysql_real_escape_string() infatti riesco correttamente ad effettuare l'insert che prima falliva, adesso dovrei implementare mysql_real_escape_string() anche sulla query di update ma non so come fare
    Se volete che la funzione di un programma non venga scoperta dall'utente, descrivetela nella documentazione...

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.