View Single Post
Old 13-02-2013, 15:03   #1
Baio84
Member
 
Iscritto dal: Apr 2012
Messaggi: 56
[PHP+ODBC] Connessioni e query

Il mio problema è il seguente: apro il mio database contenente due tabelle. Ne apro una e attraverso un ciclo while leggo record per record per estrarre le informazioni che mi servono, e durante ogni ciclo devo aggiornare i dati dell'altra tabella e anche i dati della tabella aperta per prima. Il primo giro me lo effettua, ma al secondo mi dà errore proprio all'altezza della riga del ciclo while, dicendo che c'è un problema con la query. Credo che il problema sia nell'apertura di diverse query con la stessa tabella. Si potrebbero effettuare più connessioni allo stesso database in modo da effettuare query alla stessa tabella ma con connessioni diverse per aggirare il problema? Spero di essere stato chiaro, comunque posto il codice

Codice PHP:
if (isset($_POST['risultati']))
    {
        
$connessione=odbc_connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=public/gestione.mdb","","") or die("Connessione fallita");
        
$sql "SELECT * FROM Calendario WHERE GIORNATA = $nrgiornata";
        
$partita odbc_exec($connessione,$sql) or die("Query fallita");
        while (
$partite odbc_fetch_array($partita)) //Legge i record riga per riga come un array
        
{
            .
            .
            .

            if(
$_POST["$casa"]>$_POST["$fuori"])
                {
                
                .
                .
                .

                
$sqlrisultati "UPDATE Calendario SET GCA = $gfc, GFA = $gff WHERE GIORNATA = $nrgiornata AND CASA = '$casa' AND FUORI = '$fuori'";
                
$updaterisultati odbc_exec($connessione,$sqlrisultati) or die("Query fallita");
                
                
$sql "SELECT * FROM Classifica WHERE SQUADRA = '$casa'";
                
$record=odbc_exec($connessione,$sql) or die("Query fallita");
                
$dbgfc=odbc_result($record,"GF");
                
$dbgsc=odbc_result($record,"GS");
                
$dbvittcasa=odbc_result($record,"VC");
                
                .
                .
                .
                
                
$sql="UPDATE Classifica SET GF=$nuovodbgfc, GS=$nuovodbgsc, VC=$nuovodbvittcasa WHERE SQUADRA = '$casa'";
                
$update=odbc_exec($connessione,$sql) or die("Query fallita");
                
                
$sql "SELECT * FROM Classifica WHERE SQUADRA = '$fuori'";
                
$record=odbc_exec($connessione,$sql) or die("Query fallita");
                
$dbgff=odbc_result($record,"GF");
                
$dbgsf=odbc_result($record,"GS");
                
$dbpersafuori=odbc_result($record,"PF");
                
                .
                .
                .
                
                
$sql="UPDATE Classifica SET GF=$nuovodbgff, GS=$nuovodbgsf, PF=$nuovodbpersafuori WHERE SQUADRA = '$fuori'";
                
$update=odbc_exec($connessione,$sql) or die("Query fallita");
                }
        }
    } 
Baio84 è offline   Rispondi citando il messaggio o parte di esso