Newsgroup: it.lavoro.professioni.webmaster
Titolo: PhpNuke E servers con o senza SQL

Tra i portali open + utilizzati pensi ci sia PHPnuke, e quindi spero di non
sbagliarmi se penso che qualcuno di voi abbia avuto esperienze in merito.
La mia domanda è comunque generale:
PHP nuke ha bisogni di una connessione ad un database.
Che differenza c'è, in generale, tra una connessione ODBC e una connessione
MySQL?
Esempio: con aruba posso eseguire il PHP, ma se volio delel connessioni
MySql devo pagarle, mentre ho la possibilità di connettermi ad Database con
il metodo DSN-less.
Che differenza c'è?
Posso installare PHPNuke se non ho MySQL (esempio: ARUBA) ma solo
connessioni ODBC?
Grazie a chi mi darà delucidazioni
Gianni
--------------------------------
Inviato via 
http://usenet.libero.it

 connessioni ODBC?
C'è una differenza di Prestazioni, con aruba via ODBC puoi usare Access, che
al confronto con MySQL soccombe su tutti i fronti, anzi non si dovrebbe
proprio fare il confronto.
Inoltre tieni presente che MySQL è il database che meglio si integra con Php
e benche sia possibile con Php usare database Access, non è semplice come
usare MySQL, inoltre tieni anche presente che MySQL è attualmente il
database più veloce al mondo, quindi gli 8 euro sono spesi bene.

 
TEORICAMENTE phpnuke 6.5, che uscira supporta il multidatabase tra cui 
anche sql server ed access. IN partica NON esiste una versione MDB della 
struttura di database per access e devi costruirtela tu o aspettare che 
qualcuno lo facci per te.
Usa MySQL che è meglio e stai su Nuke 6.0 che è + stabile. Inoltre mi 
vien da ridere a pensare a 10 utenti contemporanei colloegati in nuke 
con access ...
Cla
-- 
www.claudioerba.com
 - Consulenza web per l'azienda
www.spaghettibrain.com
 - PHPNUke Italian Mirror
www.spaghettilearning.com
 - Piattaforma open Source per l'E-Learning
My ICQ: 14187053

 connessioni ODBC?
Sì, è una alternativa... si può sicuramente fare. Leggiti la documentazione
di Burzi per la vers. 6.0, mi pare ci sia scritto qualcosa.
Claudio
------------------------------------
E-mail: 
in...@domaniweb.com
www.domaniweb.com
http://www.domaniweb.com/associazione

 con access ...
Mah... ho i miei dubbi.. ho visto signori siti basati su access e non
mostrare segni di sofferenza con traffici anche piu' elevati di quello
causato da 10 utenti.
Come direbbe Lbo, dipende... :-D
Claudio

 
Il file di astrazione della 6.0 NON supporta né access né MSSQL, lo fa 
solo la 6.5


 Cla
Sě, ma l'sql_layer, vers. 6.0 supporta ODBC ed č tramite il DSN di ODBC che
individui il DataBase (come MSAccess); Il produttore dell'RDBMS produce
sempre il driver per ODBC (anche il piů sconosciuto come OCELOT..) e
purtroppo non sempre per JDBC   )-:    ...esiste anche per il MySQL....
*NON* ho detto che PhpNuke 6.0 supporta direttamente Access o MS SQLServer,
quindi non capisco il motivo della tua puntualizzazione se non per far
presente le nuove feature della 6.5...
Ciao Claudio

Come direbbe Lbo, dipende... :-D
no, siccome Lbo i siti con access con piů di dieci utenti li ha messi
su e vanno benone, non dice dipende... :-)
-- 
mangia_fornitori_di_hosting ufficiale di questo newsgroup

con access ...
dieci utenti o dieci connessioni?  sono due cose diverse.  non so cosa
c'č dietro a phpnuke, ma in un file asp dieci utenti che smanettano su
un db non stanno sempre agganciati in modo esclusivo: ci stanno solo
per il tempo in cui la loro connessione rimane attiva, questione di
millisecondi.  siccome c'č un bel po' di latenza (cioč arriva la tua
query al db di access, viene eseguita dalla connessione in qualche
millisecondo, si chiude la connessione e viene sparato il risultato al
browser, nel frattempo si apre un'altra connessione, si fa la prossima
query ecc.) che dieci e piů utenti possano usare sul web un db access
č possibilissimo.  
offline son d'accordo che access come server ha i suoi limiti, ma sul
web č come se tu mettessi in fila 100 utenti di access, e uno per uno
(o due per due o cinque per cinque, non di piů) li fai accedere al db,
quando hanno fatto avanti un altro.  sul web questo succede in modo
*molto* piů veloce.



Il dipende stava per "dipende da come fai le cose" :-)
Claudio

>Claudio
aņ, c'č qualcun altro che si chiama claudio in questo thread?  e basta
no?  :-)


il metodo DSN-less.
non mi intendo di php, uso asp ma forse quello che dico può servire.
quando ci si connette ad un db con asp bisogna fornire dei parametri
(nome, percorso, tipo del db ecc.).  questi parametri possono essere
scritti in un filetto (pron. failetto) di testo che sta in una
directory condivisa del server.  scrivere questo file costa un po' di
tempo all'admin, ed ecco perché alcuni si fano pagare.
con asp, e a quanto credo anche con php, quando devi lavorare su un db
dirai in codice "prendi i dati di connessione da quel file dsn".
e questo è un metodo di connettersi al db.  poi c'è quella che, almeno
da noi aspisti, visne chiamata connessione dsn-less, cioè che non fa
uso di un file dsn.  i parametri glieli passi tutti direttamente via
codice, in fase di connessione.  e questo ha due vantaggi: uno che non
dipendi dlle bizze degli admin (gentaglia, in genere) quando decidi di
cambiare qualcosa, due che fai un accesso di meno al disco fisso...
ora, sempre con asp grazie alle connessioni dsnless una volta per
esperimento ho provato a sfilare il file access che tenevo sotto ed
infilarci un db mysql.  ho dovuto solo cambiare la stringa dei
parametri di connessione: questa altro non era che un singolo file che
includevo in tutti gli script che ne avevano bisogno.  tempo netto tre
minuti, problemi zero.
tutta sta premessa per dirti che magari pure con php avrai un modo di
specificare via codice i parametri che servono per la connessione, che
altrimenti dovrebbero essere presi dal file dsn che l'admin ha
predisposto per te.  tra questi parametri ci sarà anche il tipo di
database, che quindi potrai cambiare a piacere.


Dietro PHP-Nuke c'è una struttura dati composta da almeno 50 tabelle, quindi
se uno vuole creare la struttura per Access deve creare 50 tabelle in Access
ed impostarne tutte le caratteristiche.
Molte tabelle usano campi che non esistono in access, tipo il "Timestamp",
lo stesso campo DataTime è notevolmente differente tra Access e MySQL.
Poi quando riguarda il numero di utenti, ci possono anche stare 20-30 utenti
contemporanemente connessi ad un database Access, il problema non è quello,
il problema è che finche i dati che bisogna registrare nel database sono
pochi, Access regge, ma appena il database Access sfiora i 10 megabytes,
cominciano problemi notevoli, ovvero rallentamenti grossi di alcuni secondi
su singole query.
Con MySQL devi andare sui database di qualche centinaio di mega per
cominciare a vedere gli stessi problemi che sorgono su Access.
In alcuni casi MySQL(molte query di Insert e Delete) è anche più veloce di
Oracle.

Grazie sei stato veramente molto esauriente. A buon rendere!

Un'altra cosa: tu dici di prendere un hosting gratuito con PHP+Mysql e
utilizzarlo per i database.. ma vuol dire di utilizzare in senso stretto
solo i database?
In pratica dal PHP che è su un server mi connetto all'altro provider sul
Servr MySql? Si ma questo provider non sarà mica così sprovveduto da fare in
modo che il suo server coi database sia accessibile dall'esterno...!
G

 G
In modo automatico non vedo come lo possa fare.... in modo non macchinoso e
non complicato s'intende...  dovrebbe vedere se esiste simultaneamente alla
connessione per l'accesso al MySQL tra le richieste HTTP inviate ai suoi
server una proveniente dallo stesso IP del client...... non esiste
proprio.....
Se decidesse di togliere il servizio lo farebbe intenzionalmente e in modo
mirato....
Ciao
Claudio


Non potrebbe fare in modo che i server che possono accedere al proprio MySql
siano solo quelli della propria webfarm?
Non è difficile.. insomma basta mettere il server MySql nella propria LAN e
non in internet.. dov'è la difficoltà?
Così se ti connetti al database dai suoi server ti lascia passare, se provi
a farlo dall'esterno.. ti sega le gambe a priori!
Scusa se sono puntiglioso, ma se non funziona così vuol dire che non ho
capito bene il funzionamento del sistema MySql.
Ad ogni modo, che hosting grauito per provare mi consiglieresti?
Grazie ciao

 Grazie ciao
Ciao,
è bene essere puntigliosi, ci mancherebbe altro....
Cerco di fare un po' di mente locale anch'io...
Negli script PHP si individua il server del MySQL o con l'indirizzo IP o con
il DNS noti al server che elabora la pagina PHP ed invia l'output al client;
quando i due server coincidono (è la stessa macchina) si individua il primo
dal secondo semplicemente mettendo "localhost" nelle nostre pagine.
(e questo caso ovviamente non ci preoccupa perchè il solo Server è
banalmente su internet, quindi con l'indirizzo IP invece di localhost si
accederà al MySQL anche se la pagina PHP è elaborata altrove)
Quando invece sono diversi "localhost" produce un errore ed i fornitori di
Hosting che ci forniscono i dati di accesso ci comunicano generalmente
l'indirizzo IP del Server MySQL (non mi è mai capitato per ora di ricevere
un DNS).
In linea di principio in questo caso sarebbe possibile quello che tu dici:
mettere il server MySQL nella LAN affinchè lo si possa individuare tramite
DNS o IP della Intranet noti al solo server della stessa LAN... (...non
suggeriamolo però ai fornitori.....;-)  non facciamoci del male...!!)
Cmq., se così fosse, anche per amministrare il MySQL da Internet attraverso
il pannello di amministrazione (per qualsiasi operazione tipo creazione di
una tabella o dump del database...) dovrei sempre passare per il
Server-Firewall (dove gira il PHP) e quindi sovraccaricarlo ulteriormente
(contrastando la necessità di separare i server per ragioni di carico).
Infatti nel Server MySQL c'è pure l'estensione del PHP proprio perchè si
gestisce il DB da pannello attraverso esso: si chiama infatti pannello
phpmyadmin anche se amministra il MySQL.......
......
Al di là dei sofismi per esperienza mi sento di rassicurarti...
Prova con 
www.ibyweb.org
Per rassicurarti un loro server MySQL (gratuito) sta su Internet all'URL
http://195.234.171.79/MyAdmin/indexsite.php
Ciao
Claudio
www.domaniweb.com