Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Usare PHP con Access

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    25

    Usare PHP con Access

    Ciao a tutti, mi sto avvicinando adesso al mondo PHP-Database, vorrei sapere se il connubio PHP-Access si puo utilizzare e se si, i comandi sono sempre gli stessi?
    Grazie

  2. #2
    Utente di HTML.it L'avatar di erme2
    Registrato dal
    Oct 2002
    Messaggi
    177
    Php ha anche delle librerie per lavorare in access, ma se non ricordo male sono disponibili solo nella versione windows. I comandi di naturalmente sono diversi ma non così tanto.

    Io avevo scritto un paio di funzioni per fare un import da un mdb a mysql non sono un ganchè ma te le passo così non parti da zero

    codice:
    /*
    Scritto da Arduino il 02/03/2005
    Contiene le funzioni sql per gestire 
    un db access in php
    (Funziona solo su un server windows)
    */
    function f_mdb_select($query, $db_name, $path,$usr='',$pwd='') {
    	/*
    	PARAMETRI:
    		1 - $query *OBBLIGATORIO 
    			la query da eseguire
    		2 - $db_name *OBBLIGATORIO
    			il nome del db a cui collegarsi
    		3 - $path *OBBLIGATORIO
    			il path del db
    		4 - $usr *FACOLTATIVO
    			l'username da usare nella connessione
    		5 - $pwd *FACOLTATIVO
    			la password da usare nella connessione
    	*/
    	
    	if ((isset($usr) && $usr!='') || (isset($pwd) && $pwd!='')) $up='User ID='.$usr.'; Password='.$pwd.' ;';
    	else $up='';
    	
    	// parametri di connessione al db
    	$dsource=$path.$db_name ;
    	$cn_string="Provider=Microsoft.Jet.OLEDB.4.0;";
    	$cn_string.="Data Source=$dsource;".$up;
    	
    	if (!file_exists($dsource) ) return false;
    	
    	// apro la connessione
    	$cn= new COM("ADODB.Connection");
    	$cn->open($cn_string);
    	
    	// eseguo la query
    	$rs= new COM("ADODB.Recordset") ;
    	$rs->Open($query,$cn);
    	
    	// contatori
    	$k=1;
    	$num_columns = $rs->Fields->Count();
    	$rowcount = 0;
    
    	for ($i=0; $i < $num_columns; $i++) {
        	$fld[$i] = $rs->Fields($i);
    	}
    
    	while (!$rs->EOF) {
       		for ($i=0; $i < $num_columns; $i++) {
            	$record[$k][$i]=$fld[$i]->value;
        	}
        	echo "\n";
        	$rowcount++;
    		$k++;
        	$rs->MoveNext();
    	}
    	
    	// Chiudo la connessione
    	$cn->Close();
    	$cn->Release();
    	$cn=null;
    	$rs=null;
    	
    	return $record;
    }
    function f_mdb_iud($query, $db_name, $path,$usr='',$pwd='') {
    	/*
    	PARAMETRI:
    		1 - $query *OBBLIGATORIO 
    			la query da eseguire
    		2 - $db_name *OBBLIGATORIO
    			il nome del db a cui collegarsi
    		3 - $path *OBBLIGATORIO
    			il path del db
    		4 - $usr *FACOLTATIVO
    			l'username da usare nella connessione
    		5 - $pwd *FACOLTATIVO
    			la password da usare nella connessione
    	*/
    	
    	if ((isset($usr) && $usr!='') || (isset($pwd) && $pwd!='')) $up='User ID='.$usr.'; Password='.$pwd.' ;';
    	else $up='';
    	
    	// parametri di connessione al db
    	$dsource=$path.$db_name ;
    	$cn_string="Provider=Microsoft.Jet.OLEDB.4.0;";
    	$cn_string.="Data Source=$dsource;".$up;
    	
    	if (!file_exists($dsource) ) return false;
    	
    	// apro la connessione
    	$cn= new COM("ADODB.Connection");
    	$cn->open($cn_string);
    	
    	// eseguo la query
    	$rs= new COM("ADODB.Recordset") ;
    	$rs->Open($query,$cn);
    	
    	// Chiudo la connessione
    	$cn->Close();
    	$cn->Release();
    	$cn=null;
    	$rs=null;
    }
    eRMéS! RM98!
    "...è mai possibile oh porco di un cane, che le avventure in codesto reame, debban risolversi tutte con grandi puttane!..." - (Carlo Martello ritorna dalla battaglia di Poitiers -Fabrizio De Andrè/Paolo Villaggio)

  3. #3
    Utente di HTML.it L'avatar di erme2
    Registrato dal
    Oct 2002
    Messaggi
    177
    La prima funzione server per fare le select e ti restituisce un array con i risultati se la query riesce o false se non va a buon fine.

    Nella seconda iud sta per Insert-Update-Delete e ti restituisce true o false in base alla riuscita della query.
    eRMéS! RM98!
    "...è mai possibile oh porco di un cane, che le avventure in codesto reame, debban risolversi tutte con grandi puttane!..." - (Carlo Martello ritorna dalla battaglia di Poitiers -Fabrizio De Andrè/Paolo Villaggio)

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.