[eCommerce] Creare uno store online con OsCommerce

Per la gestione di cataloghi di prodotti online, finora, sono stato sempre propenso all’utilizzo di Joomla configurato con il plugin VirtueMart. Sapevo dell’esistenza di eCommerce nel panorama dei CMS e-commerce, ma non mi era mai venuta la voglia di provarlo.

Dopo le ultime vicende relative al rilascio di VirtueMart2, che su Joomla 1.7 tardava a diventare stabile (dicembre 2011), ho iniziato ad interessarmi a OsCommerce (volendo riprendere la definizione del sito ufficiale: Open Source Online Shop E-Commerce Solutions). Devo dire che la semplicità di installazione e la grande quantità di funzionalità (tutte quelle che permettono la gestione dei cataloghi, le transazioni con Paypal e altre modalità di acquisto e la gestione account dei clienti, tracciamento degli ordini) mi ha stupito. Per realizzare un sito che mostri uno store online e vi permetta di vendere prodotti, ve lo consiglio vivamente.

Descrivo qui i passi da seguire per l’installazione e la configurazione di OsCommerce.

Requisiti minimi:

  • PHP v4+ (PHP v5+ recommended)
  • MySQL v3+ (MySQL v5+ recommended)
  • Consigliato server in Linux

1. Download ed caricamento sul vostro server del pacchetto OsCommerce. Ho scaricato la versione 2.3.1, che è quella recente attualmente stabile. Una volta scaricato il pacchetto, decomprimetelo e caricate in FTP il suo contenuto sul vostro server (nel mio caso, ho copiato tutto il contenuto sotto la root del mio server nella cartella oscommerce). Vi troverete in particolare due directory: catalog ed extras. Quella che contiene tutto il core è catalog ed è su questa che lavoreremo per la configurazione.

2. Installazione guidata di OsCommerce. Per installare OsCommerce e farlo puntare al vostro database (MySQL), dovete accedere col browser all’indirizzo della cartella catalog/install/. Ad esempio: http://yourdomainname/oscommerce/catalog/install/ (se oscommerce è la directoy in cui avete copiato tutti i file scaricati al punto 1.

Vi si apre un pagina di installazione come questa che segue.

Seguite la procedura guidata di installazione, inserendo i parametri per accedere al vostro database e tutte le informazioni riguardanti il titolo dello store, la mail dell’amministratore e le credenziali di accesso al pannello di amministrazione.

Al completamento dell’installazione, viene visualizzata la pagina riepilogativa in cui vi consiglia di eseguire le seguenti operazioni:

  • cancellazione della cartella catalog/install/ dal vostro server (per motivi di sicurezza);
  • cambiare (se volete) il nome della cartella catalog/admin/ (Administration Tool directory);
  • settare i permessi 644 ai file catalog/includes/configure.php e catalog/admin/includes/configure.php (questi file sono fondamentali perchè contengono le informazioni per collegarsi al database; saranno quelli che occorre modificare nel caso in cui pensate a migrare su un altro server o a cambiare la connessione verso un altro database);
  • controllo di sicurezza sui permessi, direttamente nel pannello di amministrazione (Administration Tool>>Tools/Security Directory Permissions);

A fine installazione, vi trovate due bottoni: Catalog e Administration Tool  che vi permettono di accedere al catalogo di prova o al pannello di amministrazione installati.

3. Accesso alle pagine del catalogo e di Administrator Tool

Esempio – Percorso al Catalogo: http://yourdomainname/oscommerce/catalog/index.php

Esempio – Percorso all’Administration Tool: http://yourdomainname/oscommerce/catalog/admin/index.php

Errore nell’installazione di OSCommerce?

A me è capitato il seguente errore, dopo aver provato il punto 3.

Sia quando ho provato ad accedere alla pagina principale del Catalogo:

Fatal error: Cannot redeclare checkdnsrr() in /home/hosting/path_to_my_oscommerce/catalog/includes/functions/compatibility.php

che alla pagina dell’Administrator Tool:

Fatal error: Cannot redeclare checkdnsrr() in /home/hosting/path_to_my_oscommerce/catalog/admin/includes/functions/compatibility.php

Da quello che ho letto, è dovuto alla dichiarazione della funzione checkdnsrr() che non è compatibile con alcune versioni di PHP5. Leggi QUI.

Ho commentato la funzione checkdnsrr nei due file compatibility.php (nei percorsi catalog/includes/functions catalog/admin/includes/functions) e inserito la dichiarazione della funzione PEAR:

//HO COMMENTATO QUESTO CODICE
/* if (!function_exists('checkdnsrr')) {
    function checkdnsrr($host, $type) {
      if(tep_not_null($host) && tep_not_null($type)) {
        @exec("nslookup -type=" . escapeshellarg($type) . " " . escapeshellarg($host), $output);
        while(list($k, $line) = each($output)) {
          if(preg_match("/^$host/i", $line)) {
            return true;
          }
        }
      }
      return false;
    }
  }
*/

//HO INSERITO QUESTO CODICE
if (!function_exists('PEAR')) {
	function PEAR($host, $type) {
			if(tep_not_null($host) && tep_not_null($type)) {
				@exec("nslookup -type=$type $host", $output);
				while(list($k, $line) = each($output)) {
					if(eregi("^$host", $line)) {
						return true;
					}
				}
			 }
					      return false;
	}
}

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *


× 9 = settanta due