Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2013
    Messaggi
    5

    Operazioni php su record database .mdb

    Salve, ho un problema nell'aggiornamento di tabelle .mdb tramite php.

    1. ho creato un database corsi.mdb che contiene solo delle tabelle e le relazioni fra i campi; non vi sono psw per l'apertura nè psw per l'accesso del gruppo amministratori .mdw
    Ho anche creato (come suggerito in un post di questo forum) in Amministrazione origine dati ODBC una nuova origine dati di sistema DSN e l'ho chiamata CorsiDSN

    2. ho creato un progetto con PhpRunner e ho collegato il mio db:
    la stringa di collegamento server database è:
    $ODBCString = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" . getabspath("db\\corsi.mdb") . ";Uid=;Pwd=";

    3. ho testato sul mio pc direttamente con PhpRunner il progetto; la pagina si apre con:
    http://localhost:8085/menu.php
    tutto funziona bene e non ho nessun problema nell'inserimento, modifica, cancellazione di record.

    4. ho pubblicato tutta la cartella che contiene il progetto sul mio sito.it (gestito da Aruba); riesco ad accedere al menu ed alle tabelle ma non riesco ad aggiungere nuovi record o cancellare uno già esistente.

    5. se cancello un record mi compare il seguente errore:
    Errore di tipo 2
    Errore di descrizione odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC Microsoft Access Driver] Could not delete from specified tables., SQL state S1000 in SQLExecDirect
    URL www.sito.it/corsi/output/LezioniCorso_list.php?
    Errore di file D:\inetpub\webs\sitoit\Corsi\output\include\dbconn ection.odbc.php
    Errore di linea 42
    Query SQL delete from [LezioniCorso] where IdLezioneCorso=3

    il file dbconnection.odbc.php contiene alla riga 42:
    function db_exec($qstring,$conn)
    {
    global $strLastSQL,$dDebug;
    if ($dDebug===true)
    echo $qstring."<br>";
    $strLastSQL=$qstring;
    return odbc_exec($conn,$qstring);
    }

    6. se inserisco un nuovo record, mi compare il seguente errore:
    <<< Il record non è stato aggiunto >>>

    odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC Microsoft Access Driver] Operation must use an updateable query., SQL state S1000 in SQLExecDirect


    Non so che fare!! Anche se sono nuovo di php ho cercato di approfondire l'argomento della connessione odbc, ma senza risultati.

    Qualcuno sa come posso risolvere il problema? C'entra qualcosa Aruba?

    Ringrazio chiunque mi potrà aiutare.



  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2013
    Messaggi
    5
    Su Aruba è riportato che devo connettermi al file .mdb salvato nella cartella mdb-database scrivendo la seguente sintassi:

    "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("/mdb-database/database.mdb")

    Ho cambiato la mia stringa di connessione così:
    $ODBCString = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("/mdb-database/corsi.mdb") . ";Uid=;Pwd=";

    ma mi da ancora errore.

    Server.MapPath è una funzione di php? ho scritto correttamente?

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    server.MapPath e asp non so se c'è l'equivalente in php usa il percorso assoluto, ma non stare ad impazzire usa mysql
    Ultima modifica di cavicchiandrea; 10-11-2013 a 22:36
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2013
    Messaggi
    5
    Non so se a qualcuno può ancora interessare, ma giusto a fini statistici:
    ho risolto!!
    Il problema era nei permessi di scrittura sulle cartelle di Aruba. E' bastato impostare col permission manager e tutto 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.