Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Trasferimento da un ODBC ad un MySql

    Un loop di lettura dati sull'ODBC, dopo la lettursa l'inserimento nel MySql.
    Trasferisco i dati da un DB Access ad un DB MySql quando improvvisamente dopo un 10 o 20 record trasferiti il tutto si blocca con errore del MySql, non riesce a fare la query.
    Il DB non contiene nessun carattere particolare che potrebbe mandare in errore l'esecuzione PHP.
    Non ne trovo il motivo, any ideas ?

    Allego il codice per i curiosi.

    Codice PHP:
    <?
          
    include './admin/cookies.php' ;
          include 
    './admin/header.php' ;

    function 
    Error_Handler$msg$cnx )
    {
            echo 
    "$msg \n";
                    
    // in case of persistent connexion, it is important to close it before exiting.
            
    odbc_close$cnx);
            exit();
    }
            
    // create an ODBC connection, returned in $cnx
            
    $cnx odbc_pconnect($databaseodbc$userodbc$passodbc );
    //        To avoid permission troubles in the test, you may want to use a superadmin access :
    //        $cnx = odbc_connect( 'Muscle' , [sa login] , [sa password] );

            
    if( ! $cnx ) {
                    
    Error_handler"Error in odbc_connect" $cnx );
            }       
            if (
    $ordine) {   
                 
    $ordine=$ordine;    
                } else {
                
    $ordine="Prodotto";
                } 
            
    //    echo"Ordine: $ordine   ";
            
    $dittas="Ast";
            
    $quera="select Puntatore,qt,codice,Disponibilita,Prodotto,Categoria,Categoria2,Marca,Gusto,Formato,Pagato,Scontoditta,Prezzo,Sconto1,Sconto2,Sconto3,Offerta,Foto,Ingredienti,Ingredienti2,Descrizione,Flagofferte,Uso,Novita from Prodotti where Marca= '$dittas' order by $ordine ";
            
    $curodbc_exec$cnx$quera );
            if( ! 
    $cur ) {
         
    Error_handler"Error in odbc_exec( Errore Cursore nel ODBC ) " $cnx );
            }        
            
    $nbrow=0;        
              
           while( 
    odbc_fetch_row$cur ) )
            {            
                    
    $nbrow++;
                    
    $Puntatore=  odbc_result$cur);
                    
    $qt=  odbc_result$cur);
                    
    $codice=  odbc_result$cur);
                    
    $dispo=  odbc_result$cur);
                    
    $Prodottoodbc_result$cur);
                    
    $Categoriaodbc_result$cur);
                    
    $Categoria2odbc_result$cur);                
                    
    $Marca=   odbc_result$cur);
                    
    $Gusto=odbc_result$cur);
                    
    $for=odbc_result$cur10 );
                    
    $Pagato=odbc_result$cur11 );
                    
    $Scontoditta=odbc_result$cur12 );
                    
    $Prezzo=odbc_result$cur13 );
                    
    $Sconto1=odbc_result$cur14 );
                    
    $Sconto2=odbc_result$cur15 );
                    
    $Sconto3=odbc_result$cur16 );
                    
    $Offerta=odbc_result$cur17 );
                    
    $Foto=odbc_result$cur18 );
                    
    $Ingredienti=odbc_result$cur19 );
                    
    $Ingredienti2=odbc_result$cur20 );
                    
    $Descrizione=odbc_result$cur21 );
                    
    $Flagofferte=odbc_result$cur22 );
                    
    $Uso=odbc_result$cur23 );
                    
    $Novita=odbc_result$cur24 );
                    
           echo
    "$Puntatore.$qt.$codice.$dispo.$Prodotto.$Categoria.$Categoria2.$Marca.$Gusto.$for.$Pagato.$Scontoditta.$Prezzo.$Sconto1.$Sconto2.$Sconto3.$Offerta.$Foto.$Ingredienti.$Ingredienti2.$Descrizione.$Flagofferte.$Uso.$Novita \n";         
                  
    // -----Mette nel MYSQL ------------------

      
    $db mysql_connect("$mysqlhost","$mysqluser","$mysqlpass") or die ("Non posso connettermi al server!");
      
    mysql_select_db("Muscle",$db) or die ("Non posso selezionare il database!") ;
      
    $sql "INSERT INTO prodotti (qt,codice,Disponibilita,Prodotto,Categoria,Categoria2,Marca,Gusto,Formato,Pagato,Scontoditta,Prezzo,Sconto1,Sconto2,Sconto3,Offerta,Foto,Ingredienti,Ingredienti2,Descrizione,Flagofferte,Uso,Novita) VALUES ('$qt','$codice','$dispo','$Prodotto','$Categoria','$Categoria2','$Marca','$Gusto','$for','$Pagato','$Scontoditta','$Prezzo','$Sconto1','$Sconto2','$Sconto3','$Offerta','$Foto','$Ingredienti','$Ingredienti2','$Descrizione','$Flagofferte','$Uso','$Novita')";
      
    $result mysql_query($sql,$db)or die ("Non posso inserire il record nel MyEsseQuello!");

       
    mysql_close();  
                 
    // -----------Mette nel MYSQL-------------------
                    
                    
                    
             
    }
             
             
            
    odbc_close$cnx);         
                    
                    include 
    './admin/footer.php' ;
                    
                    
    ?>

  2. #2
    nel DIE metti la segnalazione dell'errore invece della tua stringa per nulla significativa.

    Mysql_error()


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

  3. #3
    Originariamente inviato da piero.mac
    nel DIE metti la segnalazione dell'errore invece della tua stringa per nulla significativa.

    Mysql_error()

    Già, questo è qualche cosa...

  4. #4
    C'è un apice sulla parola "d'acqua" che rompeva le query, chi si ricorda la funzione per isolare gli apici, ho un vuoto di memoria. :master:

  5. #5
    addslashes() ... mysql_escape_string()


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

  6. #6
    Originariamente inviato da piero.mac
    addslashes() ... mysql_escape_string()

    Ti bbacio, grazie

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.