Visualizzazione dei risultati da 1 a 5 su 5

Discussione: SQL syntax

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929

    SQL syntax

    ciao a tutti,

    rieccomi con problemi stupidi che non riesco a spiegarmi...
    ricevo questo errore
    codice:
    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 'PRESENTE ALCUNA DESCRIZIONE','10.000,00','VENDE','test','test1'
    cosi prendo i valori trammite post
    codice:
    $uno = $_POST['Status'];
    $due = $_POST['nazione'];
    $tre = $_POST['regione'];
    $quattro = $_POST['citta'];
    $cinque = $_POST['provincia'];
    $sei = $_POST['zona'];
    $sette = $_POST['indirizzo'];
    $otto = $_POST['n'];
    $nove = $_POST['cap'];
    $dieci = $_POST['tipo'];
    $undici = $_POST['garagepostoauto'];
    $dodici = $_POST['giardino'];
    $tredici = $_POST['vista'];
    $quattordici = $_POST['distanza'];
    $quindici = $_POST['livelloopiano'];
    $sedici = $_POST['camere'];
    $diciasette = $_POST['bagni'];
    $diciotto = $_POST['cucina'];
    $dicianove = $_POST['ripostiglio'];
    $venti = $_POST['descrizione'];
    $ventuno = $_POST['prezzo'];
    $ventidue = $_POST['vendeaffitta'];
    $ventitre = $_POST['hiddenField'];
    $ventiquattro = $_POST['hiddenField1'];
    $venticinque = $_POST['hiddenField2'];
    $ventisei = $_POST['hiddenField3'];
    $ventisette = $_POST['disponibilitadal'];
    $ventotto = $_POST['disponibilitaal'];
    $ventinove = $_POST['mq'];
    $trenta = $_POST['balconi'];
    poi con questi valori faccio la query
    codice:
    $insertSQL = "INSERT INTO immobili (Status,nazione,regione,citta,provincia,zona,indirizzo,n,cap,tipo,garagepostoauto,giardino,vista,distanza,livelloopiano,camere,bagni,cucina,ripostiglio,descrizione,prezzo,vendeaffitta,foto,foto1,foto2,foto3,disponibilitadal,disponibilitaal,mq,balcone) values ('".$uno."','".$due."','".$tre."','".$quattro."','".$cinque."','".$sei."','".$sette."','".$otto."','".$nove."','".$dieci."','".$undici."','".$dodici."','".$tredici."','".$quattordici."','".$quindici."','".$sedici."','".$diciasette."','".$diciotto."','".$dicianove."','".$venti."','".$ventuno."','".$ventidue."','".$ventitre."','".$ventiquattro."','".$venticinque."','".$ventisei."','".$ventisette."','".$ventotto."','".$ventinove."','".$trenta."')";
    il prblema è sulla variabile $venti e le successive...

  2. #2
    Scommetto che hai un .. E' PRESENTE....

    dovresti passare la/le stringhe con addslashes oppure con mysql_escape_string(). Ti manca sicuramente il carattere di escape.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    codice:
    $venti = $_POST['descrizione'];
    qui è presente la "E' PRESENTE"

    come devo risolvere??

  4. #4
    Originariamente inviato da Rossella_75
    codice:
    $venti = $_POST['descrizione'];
    qui è presente la "E' PRESENTE"

    come devo risolvere??
    in modo semplice:

    $venti = addslashes($_POST['descrizione']);

    pero' sarebbe bene gestire il carattere di escape su tutta la linea.. cioe' a partire da come e' configurato magic_quote_gpc in php.ini in modo da evitare di raddoppiare il carattere di escape nel caso l'opzione fosse attiva.

    Per sicurezza potresti fare:

    $venti = addslashes( stripslashes( $_POST['descrizione']));

    Ma andrebbe gestito meglio. Vedi per esempio una soluzione postata tempo fa da kaworuskench:

    http://forum.html.it/forum/showthrea...66#post6311366

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    questa propio non la sapevo....


    Grazie mille adesso funziona

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.