• User Newbie

    UPDATE, strano problema 1064

    Buongiorno a tutti, dopo diversi giorni e diversi forum mi rivolgo a voi per cercare la soluzione ad una query mysql; espongo il problema:

    
    $mod = $_GET['mod'];
    $testo = $_POST['testo'];
    
    if (isset ($testo)){
    	include ("../../konn/konn.php");
    	echo $testo;
    	$query = "UPDATE sezione SET '$mod'='$testo'";
    	mysql_query($query,$db);
    	echo "<html>
    <head></head>
    <body>";
    echo mysql_error();
    echo "</body>
    </html>";
    } else {
    ...
    
    

    considerando che:

    • la variabile $testo è un array proveniente da fckeditor in cui è inserito html;
    • ho provato invano a rimuovere anche gli apici;

    secondo voi perchè mi da questo spiacevole errore (Direttivo --> $mod e capperi --> $capperi):

    
    1064
    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 ''Direttivo'='
    capperi
    
    '' at line 1
    
    

    Vi ringrazio anticipatamente...😢
    Marco


  • ModSenior

    Ciao kaps,

    ma tu devi modificare il campo avente il nome del valore di $mod?


  • User Newbie

    Problema risolto...
    era legato al nome del campo $mod: non accetta in nessun modo che abbia uno spazio al suo interno...:x


  • ModSenior

    [php]
    $query = "UPDATE sezione SET $mod='$testo'";

    [/php]
    Se usi questi apici per il nome del campo dovrebbe funzionare anche con gli spazi, se non ricordo male, anche se è preferibile evitare.


  • User Newbie

    Mah, visto che il problema era legato al fatto che il nome del campo avrei dovuto stamparlo a video, ho risolto il problema togliendo gli spazi ed inserendo nella pagina un banale codice di conversione:

    [PHP]// Cambio il testo di pageload
    if ($pageload == "storia"){
    $pageprint = "Storia della Sezione";
    } elseif ($pageload == "scuolapg"){
    $pageprint = "Scuola Paolo Giordano";
    } elseif ($pageload == "direttivo"){
    $pageprint = "Consiglio Direttivo";
    };[/PHP]

    così mi sono risolto anche il problema dei nomi di campo con lo spazio che non piaceva affatto neanche a me...

    Grazie mille. 😉
    marco