Naufraghi nella Rete

PHP per tutti

Introduzione

Che cosa è?

E' un pacchetto di programmi per poter usare ed amministrare PHP su macchine win9x-Me.
Un modo semplice per distribuire applicazioni sviluppate il PHP/MySQL.

Perchè?

Perchè dopo anni di VB ho deciso di usare PHP anche lato utente. E con un po' attenzione è possibile distribuire i propri programmi in PHP con circa 4 Mb di installazione, 2 .INI e una sola DLL nelle cartelle di sistema, nessun OCX da registrare :-).

Come e con che cosa?

Ho utilizzato esclusivamente prodotti gratuiti:

Vantaggi?

Ecco un po' dei vantaggi che mi sono venuti in mente.

Gli svantaggi non mi sono venuti in mente...

|top|

Componenti necessari

MySQL

Lo trovate a... indovina un po'... www.mysql.com, scaricate ed installate l'ultima beta win32.

Sambar

Anche questo è difficile, www.sambar.com. È un ottimo server, gratuito nella versione base (per noi più che sufficente) con dentro un po' di tutto: server http, ftp, pop, proxy vari, supporto ISAPI, insomma un piccolo mostro.

Io ho utilizzato l'ultima Production Release (la 4.3) ma è probabile che la beta funzioni egregiamente. Scaricate ed installate il tutto.

Ma perchè non Apache?

  • Perchè Apache 1.3.14 non è ancora perfettamente integrato in windows 9x-Me, preferisce lavorare come servizio sotto NT-Win2000. Quindi ad ogni spengimento windows dà un messaggino di notifica noioso che a volte compromette il corretto spengimento della macchina.
  • Sarebbe sufficiente fare eseguire al momento dello spengimento lo shutdown di apache, ma non ho trovato una utility per fare questo servizio gratuita e poco invasiva.
  • Ho vagato tra i vari server per windows (Xitami, OmniHTTPd ed altri) ma Sambar è l'unico col supporto ISAPI, molto più comodo e meno rantolante del CGI.
  • Inoltre ho pensato potesse essere utile mettere sulla macchina del cliente un serverino FTP, però Apache è solo demone HTTP, mentre Sambar fa un po' di tutto.

PhpMyAdmin

È un ottima interfaccia a MySQL sviluppata in PHP, lo trovate a www.phpwizard.net .

PHP

Beh, serve proprio dirlo? www.php.net . Scaricatevi l'ultima versione per windows.

VNC

È una specie di PCAnydove, solo un po' più lento ma gratuito e multi piattaforma.

Lo trovate qui: www.uk.research.att.com/vnc/ e date un'occhiata anche a www.uk.research.att.com/vnc/extras.html

Inno Setup

Ma perchè il mondo continua ad usare altri prodotti di installazione? Ve lo trovate a www.jrsoftware.org/isinfo.htm , io però ho usato un prodotto derivato, My Inno Setup Extensions e vi consiglio ISTools come editor di script ed InnoTree (non lo trovo piu' da nessuna parte...) per generare le liste dei files da installare.

|top|

Creazione dello script di setup

Con un po' di tentativi ho trovato i files strettamente necessari per la distribuzione.

Questo è il codice commentato dello script di setup:

Questa è la testata del file prodotto da ISTools.

; This script was created by ISTool
; http://www.istool.org

[_ISTool]
EnableISX=false
UseAbsolutePaths=true

Questa è la parte in cui viene deciso che cartelle creare. {app}, per esempio, è la cartella dell'applicazione, e tutti i nomi tra parentesi graffe sono variabili risolte al momento del setup.

[Dirs]
Name: {app}\mysql
Name: {app}\mysql\data
Name: {app}\mysql\data\villaliberty
Name: {app}\mysql\data\mysql
Name: {app}\mysql\lib
Name: {app}\mysql\share
Name: {app}\mysql\share\english
Name: {app}\mysql\bin
Name: {app}\sambar43
Name: {app}\sambar43\config
Name: {app}\sambar43\lib
Name: {app}\sambar43\messages
Name: {app}\sambar43\log
Name: {app}\sambar43\include
Name: {app}\sambar43\cgi-bin
Name: {app}\sambar43\bin
Name: {app}\sambar43\search
Name: {app}\sambar43\profiles
Name: {app}\sambar43\docs
Name: {app}\sambar43\docs\phpMyAdmin
Name: {app}\sambar43\docs\phpMyAdmin\images
Name: {app}\vnc

In questa parte vengono identificati i files da includere nel setup, e viene definita le loro destinazione.

[Files]

; MySQL tiene i files di ogni archivio in una cartella con lo stesso nome
; contenuta in c:\mysql\data.
; E' sufficente copiare la cartella per avere in nostro archivio disponibile

Source: C:\mysql\data\mio_archivio\tabella1.MYI; DestDir: {app}\mysql\data\mio_archivio
Source: C:\mysql\data\mio_archivio\tabella1.MYD; DestDir: {app}\mysql\data\mio_archivio
Source: C:\mysql\data\mio_archivio\tabella1.frm; DestDir: {app}\mysql\data\mio_archivio

; L'archivio "mysql" è molto importante perchè contiene le informazioni su
; gli utenti e sui permessi.

Source: C:\mysql\data\mysql\host.frm; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\user.frm; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\db.frm; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\columns_priv.frm; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\tables_priv.frm; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\host.MYI; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\columns_priv.MYI; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\db.MYD; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\db.MYI; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\host.MYD; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\columns_priv.MYD; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\tables_priv.MYD; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\tables_priv.MYI; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\user.MYD; DestDir: {app}\mysql\data\mysql
Source: C:\mysql\data\mysql\user.MYI; DestDir: {app}\mysql\data\mysql

; Questi sono gli eseguibili e le librerie strettamente necessarie

Source: C:\mysql\lib\cygwinb19.dll; DestDir: {app}\mysql\lib
Source: C:\mysql\share\english\errmsg.txt; DestDir: {app}\mysql\share\english
Source: C:\mysql\share\english\errmsg.sys; DestDir: {app}\mysql\share\english
Source: C:\mysql\bin\mysqld-opt.exe; DestDir: {app}\mysql\bin
Source: C:\mysql\bin\winmysqladmin.exe; DestDir: {app}\mysql\bin
Source: C:\mysql\Readme; DestDir: {app}\mysql

; Sambar è un server completo, ma se gli togliamo le dll delle estensioni
; non si arrabbia e semplicemente non le carica.
; Quindi per una distribuzione minimale possiamo lasciare a casa molte cose.

; Se non abbiano modificato la configurazione standard sambar alla prima
; esecuzione ricrea i files di configurazione con i valori standard.
; Possiamo inviare quindi solo i files modificati, gli altri saranno
; generati automaticamente

Source: C:\sambar43\config\mappings.ini; DestDir: {app}\sambar43\config
Source: C:\sambar43\config\config.ini; DestDir: {app}\sambar43\config

; Questa cartella ce l'ho messa tutta, ma non so se è veramente necessaria

Source: C:\sambar43\messages\Usrdef9.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Badgate.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Badlogin.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Badtoken.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Baduser.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Common.eng; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Dbfail.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Duplicat.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Filtered.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Forbiden.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\inuse.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Loggedin.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Maxlogin.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Moved.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Notfnd.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Notimpl.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Paused.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\restart.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Shutdown.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Srvdown.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Syserror.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Timeout.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef1.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef10.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef11.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef12.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef13.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef14.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef15.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef16.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef17.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef18.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef19.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef2.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef20.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef3.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef4.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef5.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef6.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef7.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Usrdef8.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\Baddata.htm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\forbiden.stm; DestDir: {app}\sambar43\messages
Source: C:\sambar43\messages\sslonly.htm; DestDir: {app}\sambar43\messages

; anche la cartella dei log se assente viene creata

Source: C:\sambar43\log\README.TXT; DestDir: {app}\sambar43\log

; Queste sono le librerie necessarie per l'esecuzione di sambar

Source: C:\sambar43\bin\sambar.dll; DestDir: {app}\sambar43\bin
Source: C:\sambar43\bin\samples.dll; DestDir: {app}\sambar43\bin
Source: C:\sambar43\bin\sambarcm.dll; DestDir: {app}\sambar43\bin
Source: C:\sambar43\bin\server.exe; DestDir: {app}\sambar43\bin
Source: C:\sambar43\readme.txt; DestDir: {app}\sambar43
Source: C:\sambar43\license.txt; DestDir: {app}\sambar43

; per comodità la dll ISAPI di PHP l'ho messa qui.

Source: C:\php\sapi\php4isapi.dll; DestDir: {app}\sambar43\bin

; Ecco finalmente i vostro programma (docs è la cartella base per i documenti di Sambar)
; Per qualche ragione che non ho individuato i files .php devono essere contenuti in questa cartella
; o un sue sottocartelle, non funziona con le cartelle-alias.

Source: D:\HTMLav\mio_programma_in_php\index.php; DestDir: {app}\sambar43\docs

; Poi arriva phpMyAdmin.

Source: C:\phpMyAdmin\ChangeLog; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\DEVELOPERS; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\Documentation.html; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\INSTALL; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\LICENSE; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\README; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\TODO; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\catala.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\chinese_big5.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\chinese_gb.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\config.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\danish.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\db_create.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\db_details.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\db_dump.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\db_printview.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\db_readdump.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\dutch.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\english.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\index.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\extchg.sh; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\footer.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\french.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\german.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\functions.js; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\header.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\italian.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\ldi_check.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\ldi_table.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\left.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\lib.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\main.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\norwegian.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\polish.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\portuguese.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\russian-koi8.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\russian-win1251.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\spanish.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\sql.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_addfield.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_alter.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_qbe.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_change.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_copy.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_create.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_dump.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_printview.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_properties.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_properties.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_rename.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_replace.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\tbl_select.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\bulgarian-win1251.inc.php; DestDir: {app}\sambar43\docs\phpMyAdmin
Source: C:\phpMyAdmin\images\bkg.gif; DestDir: {app}\sambar43\docs\phpMyAdmin\images
Source: C:\phpMyAdmin\images\browse.gif; DestDir: {app}\sambar43\docs\phpMyAdmin\images
Source: C:\phpMyAdmin\images\minus.gif; DestDir: {app}\sambar43\docs\phpMyAdmin\images
Source: C:\phpMyAdmin\images\plus.gif; DestDir: {app}\sambar43\docs\phpMyAdmin\images
Source: C:\phpMyAdmin\images\spacer.gif; DestDir: {app}\sambar43\docs\phpMyAdmin\images

; Poi VNC

Source: C:\Programmi\vnc\vncviewer.exe; DestDir: {app}\vnc
Source: C:\Programmi\vnc\VNCHooks.dll; DestDir: {app}\vnc
Source: C:\Programmi\vnc\omnithread_rt.dll; DestDir: {app}\vnc
Source: C:\Programmi\vnc\WinVNC.exe; DestDir: {app}\vnc
Source: C:\Programmi\vnc\ZLIB.DLL; DestDir: {app}\vnc

; Ed infine i file che vanno in c:\windows e c:\windows\system

Source: C:\php\php.ini; DestDir: {win}\
Source: c:\windows\my.ini; DestDir: {win}\
; Questa .DLL è il cuore di PHP4, non ve la dimenticate
Source: C:\php\php4ts.dll; DestDir: {sys}\

In questa parte vengono definite le modifiche da apportare ad in file .INI una volta installati (per andare a puntare la vera cartella di installazione)

[INI]
Filename: {win}\php.ini; Section: PHP; Key: extension_dir; String: {app}\php\extensions
Filename: {win}\my.ini; Section: WinMySQLAdmin; Key: Server; String: {app}\mysql\bin\mysqld-opt.exe
Filename: {win}\my.ini; Section: mysqld; Key: basedir; String: {app}\mysql\
Filename: {win}\my.ini; Section: mysqld; Key: datadir; String: {app}\mysql\data

Queste sono un po' delle configurazioni possibili sul programma di setup.

[Setup]
OutputBaseFilename=Setup_MioProgramma
AppCopyright=Matteo Bertini
AppName=Mio Programma
AppVerName=Mio Programma 1.0
DefaultDirName={pf}\Mio Programma
DefaultGroupName=Mio Programma
MessagesFile=compiler:ItalianIsx.isl, compiler:Default_It.isl
OutputDir=C:\cartella_installazione_MioProgramma

Questa è la parte in cui vengono descritti collegamenti da creare.

[Icons]
Name: {commonstartup}\WinMySQLAdmin; Filename: {app}\mysql\bin\winmysqladmin.exe; IconIndex: 0

; E' essenziale impostare anche la WorkingDir: pechè altrimenti Sambar creerebbe le sue cartelle
; di default sulla radice (nascerebbero c:\log, c:\config ...)
Name: {commonstartup}\Sambar Server; Filename: {app}\sambar43\bin\server.exe; IconIndex: 0; WorkingDir: {app}\sambar43\
Name: {group}\Mio Programma; Filename: http://localhost/; IconIndex: 0
Name: {group}\WinVNC Server; Filename: {app}\vnc\WinVNC.exe; IconIndex: 0

Questa parte definisce i programmi da lanciare al termine dell'installazione.

[Run]
Filename: {app}\mysql\bin\winmysqladmin.exe; Description: winMySQLAdmin; Flags: nowait

; Anche in questo caso dobbiamo specificare la WorkingDir: di Sambar
Filename: {app}\sambar43\bin\server.exe; Description: Sambar Server; Flags: nowait; WorkingDir: {app}\sambar43

; e, magia, il vostro browser predefinito si aprirà sulla pagina iniziale della vostra creazione
Filename: http://localhost/; Flags: shellexec
|top|

Configurazione di PHP e MySQL

Nel file php.ini le cose essenziali da modificare sono:

Invece per il corretto funzionamento di winmysqladmin.exe, il file My.ini deve contenere:

[WinMySQLAdmin]
# Deve puntare l'eseguibile (ma ci pensa il setup)
Server=C:/MYSQL/bin/mysqld-opt.exe
# Questi devono essere quelli giusti se vogliamo che WinMySQLAdmin funzioni bene
user=root
password=MiaPaSSWorD

[mysqld]
# Anche qua il grosso del lavoro lo fa il setup.
# Se cambiate lingua, dovete aggiungere i files giusti (io ci ho messo quelli in inglese)
basedir=C:/MYSQL
#bind-address=10.0.0.4
datadir=C:/MYSQL/data
#language=C:/MYSQL/share/your language directory
#slow query log#=
#tmpdir#=
#port=3306
#set-variable=key_buffer=16M


Download


Links Utili

Ultima modifica 27/06/2005
Per ogni suggerimento/errore contattatemi liberamente: Matteo Bertini

Creative Commons License
This work is licensed under a Creative Commons License.
Commenti

mklmb -- 2002-02-25 12:02:02
non male l'idea mi piace :-)))

Gohane -- 2002-02-25 12:02:29
Grazie! Mi piace PHP! Ora inizio subito ad allenarmi :)

DR. SCHaFauSeN -- 2002-02-25 12:02:44
io consiglio Xitami come web server per window

Spectrum -- 2002-02-25 12:03:02
bella l, bello sbattimento, PHP ha delle buone potenzialit =)~

Francesco -- 2002-02-25 12:03:22
Un Manuale in Italiano da Scaricare sul PHP?, voi l'ho avete?

Lorenzo -- 2002-02-25 12:03:38
Ma io non ho capito che differenza c' tra questo PHP e quello per fare pagine web. chi mi sa dire qualcosa mi mandasse un'email a lorenzo.ferrucci@libero.it

Matteo Bertini -- 2002-02-25 12:04:00
Il PHP lo stesso, il fatto di usarlo sulla macchina dell'utente invece che sul server che nuovo.

Flavio -- 2002-02-25 12:04:17
Peccato non sia disponibile il download, altrimenti lo proverei subito. na domanda, esiste documentazione di Sambar in italiano ???? Per contatti flaviopoli@yahoo.it grazie. X il download riprovero' in altro momento. Saluti e complimenti x l'idea.

gimi -- 2002-02-25 12:04:35
ben fatto questo ci voleva ma uno come me che la prima vota che si cimenta in queste cose avrebbe bisogno di un p di pi chiarezza, immagino che per chi fa questi tutorial semplice ma per me come penso per altri mi trovo in difficolt. troppo se chiedo di mettere qualche immagine esplicativa nei tutorial in modo da rendere l'idea?? complimenti comunque sono io che sono un asino

Nannibombo -- 2002-02-25 12:04:52
Io ho appena iniziato a studiarmi PHP. Questa "idea" mi sembra grande, prover ad applicarmi, vediamo dove arriver. Saluto a tutti.

Matteo bis -- 2002-02-25 12:05:06
Chi pu consigliarmi un buon libro/manuale per PHP: ho esigenza di utilizzare solo un database per la costruzione di pagine WEB; e qualche buon programma. Anticipatamente vi ringrazio.

Emiliano -- 2002-02-25 12:08:20
Per me pi facile installare (e da utlizzare) PHPdev3. Ma solo questione di preferenze.

Carlo -- 2002-02-25 12:08:37
Daccordo su tutto, ma ilproblema della stampa (modulistica...) come lo risolvi?

Matteo Bertini -- 2002-02-25 12:08:54
Con gli style sheets possibile impostare dimensioni e posizioni al millimetro, in questo modo posso stampare anche dentro i riquadri una ricevuta prefincata. (ci vuole un po' di pazienza ma funziona)

caimann-raul(nick) -- 2002-02-25 12:09:37
E' stupendo PHP... sono all'inizio ma devo ringraziare moltissimo siti di php con filosofia FREE e soprattutto Matteo Bertini...continua cos

Francesco -- 2003-12-14 22:02:12
ho installalo php 4.3.3 è ora mi da qualche errore, puoi inviarmi il file php.ini già canfigurato? ti rigrazio ciao

Stefx -- 2005-02-18 11:20:00
Mi servirebbe uno script per apache, qualcuno mi aiuta (stefx@email.it) bye

Alessio -- 2005-03-15 18:34:20
Un grazie gigante. Sono un pivellino ma cerco di imparare... Grazie per l'aiuto! ^_^

francesco -- 2007-06-14 11:03:56
mi sto addentrando in questo "ambaradan" di tecnologie. Gradisco molto la forma del sito e ti faccio i complimenti per la sintesi. Non ho ancora letto tutto, forse la risposta alla domanda è già all'interno dei contenuti: cosa ne pensi di AJAX per risolvere esigenze di gestioni dinamiche lato client? Ho questo bisogno (e mi piacerebbe essere svincolato il più possibile dalle specificità dei browser ... possibile?). L'indirizzo: francesco.miconi@gmail.com. Ti ringrazio per gentili tuoi punti di vista.
Nota: I link esterni sono in corsivo e aprono una nuova pagina.


Naufraghi nella rete - PHP - Informatica - Linux - Blog - Appartamento a Firenze - Gruppo di discussione