• User Newbie

    Errore nell'inserimento dati in MySql

    Ciao

    Da qualche giorno sto provando ad installare un gestionale, per l'esattezza Gazie, ma ho notato un errore strano che sinceramente ritengo causato dal codice php, in pratica nell'inserimento di un articolo il form con i dati non viene correttamente salvato in un array, determinando l'errore nell'inserimento dei dati nel db.

    In pratica esistono due funzioni, la prima si occupa di costruire la query da inviare al db.

    function tableInsert ($table, $columns, $newValue)
    {
        global $link, $gTables;
        $first = True;
        $colName = "";
        $colValue = "";
        while(list($key,$field) = each($columns)) {
            $colName .= ($first ? $field : ','.$field);
            $colValue .= ($first ? " '" : ", '");
            $first = False;
            $colValue .= (isset($newValue[$field]) ? $newValue[$field] : '')."'";
        }
    
        $query = "INSERT INTO ".$gTables[$table]." ( ".$colName." ) VALUES ( ".$colValue.")";
    
        $result = mysql_query($query, $link);
        if (! $result ) {
            $result = "<br />Errore nell'esecuzione di <b>dynQuery</b> <br />Query= <b>$query</b> <br /> Errore Mysql = <b>".mysql_error()."</b><br />";
            print $result;
        }
        return $result;
    }
    ```la seconda prepara i dati da inviare al db
    
    

    function articoInsert ($codice, $newValue)
    {
    $table = 'artico';
    $columns = array( 'codice', 'descri', 'image', 'barcode', 'unimis', 'catmer', 'preacq', 'preve1', 'preve2', 'preve3', 'aliiva', 'esiste', 'valore', 'scorta', 'riordino', 'uniacq', 'peso_specifico', 'codcon', 'annota', 'adminid');
    $newValue['codice'] = $codice;
    //agiungo l'utente all'array prima di aggiornare il db
    $newValue['adminid'] = $_SESSION['Login'];
    tableInsert($table, $columns, $newValue);
    }

    In pratica mi sembra che l'array venga sfasato.
    Ora il problema è che secondo l'autore questo non succede nelle sue prove ed imputa il problema al mio (server win 2003 e zed engine 2), come cavolo è possibile??

  • User Attivo

    A vederlo così sembra corretto, non è che provi ad inserire dei campi con dentro degli apici a cui non hai aggiunto uno slash davanti?


  • User Newbie

    No ho riprovato per sicurezza anche ora, ma nessun apice o /
    però la cosa strana (provata adesso) è che con Apache funziona!!!!
    io sotto IIS 6 in isolazione IIS 5, non riesco farlo funzionare!