Tutorial avanzati su tematiche web su nettuts.com

Ottimo sito dove poter trovare interessanti tutorial avanazati su programmazione web.

Sito web: http://nettuts.com/

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • blinkbits
  • BlinkList
  • blogmarks
  • co.mments
  • del.icio.us
  • De.lirio.us
  • digg
  • Fark
  • feedmelinks
  • Furl
  • LinkaGoGo
  • Ma.gnolia
  • NewsVine
  • Reddit
  • scuttle
  • Smarking
  • Spurl
  • YahooMyWeb
  • DZone
  • Internetmedia
  • Snap2r
  • Technorati

Come realizzare un gestore di licenze con php

// make sure fopen is not disabled
if( !( ini_get(allow_url_fopen) ) ) exit(’Configuration Error: allow_url_fopen must be turned on for this script to work’);

//if kill file does not exist you will get an error (client can see url of kill file) so turn off errors
error_reporting(0);

//get kill file
$lines = file(’http://www.example.com/killer/clientname.txt’);

//if the word kill is in the text file then exit script and show license message
foreach ($lines as $line_num => $line) {
         $license = htmlspecialchars($line);

         if ((strcmp($license,"kill") == 0 )) {
                 exit ("<font color=red size=large><b>There is a problem with this php script’s license please contact support at www.mydomain.com</b></font>");
        
         }
 }

//turn error messages back on
error_reporting(E_ALL);

//this section used to check to see if this script is run in a particular domain
//get the domain name
preg_match("/^(http:\/\/)?([^\/]+)/i", $_SERVER[’SERVER_NAME’], $matches);
$host = $matches[2];
// get last two segments of host name
preg_match("/[^\.\/]+\.[^\.\/]+$/", $host, $matches);
//echo "domain name is: {$matches[0]}\n";

$valid_domain = ‘clientdomain.com’;
$domain_name = $matches[0];
if ( $domain_name !== $valid_domain) {
    exit("<font color=red><b>The Script License for this script is valid for use on " . $valid_domain . " only </b></font>");
}

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • blinkbits
  • BlinkList
  • blogmarks
  • co.mments
  • del.icio.us
  • De.lirio.us
  • digg
  • Fark
  • feedmelinks
  • Furl
  • LinkaGoGo
  • Ma.gnolia
  • NewsVine
  • Reddit
  • scuttle
  • Smarking
  • Spurl
  • YahooMyWeb
  • DZone
  • Internetmedia
  • Snap2r
  • Technorati

Immagini con watermark con php

 

Ecco come applicare un testo di watermark a una immagine con php 

Leggi l’articolo: http://smashingcoding.com/2007/12/14/un-watermak-png-propre-en-php/

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • blinkbits
  • BlinkList
  • blogmarks
  • co.mments
  • del.icio.us
  • De.lirio.us
  • digg
  • Fark
  • feedmelinks
  • Furl
  • LinkaGoGo
  • Ma.gnolia
  • NewsVine
  • Reddit
  • scuttle
  • Smarking
  • Spurl
  • YahooMyWeb
  • DZone
  • Internetmedia
  • Snap2r
  • Technorati

Tecniche di cache con php

 

Ottimi tutorial su come gestire la cache con php 

Sito web: http://smashingcoding.com/2007/10/23/les-techniques-de-cache-en-php/

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • blinkbits
  • BlinkList
  • blogmarks
  • co.mments
  • del.icio.us
  • De.lirio.us
  • digg
  • Fark
  • feedmelinks
  • Furl
  • LinkaGoGo
  • Ma.gnolia
  • NewsVine
  • Reddit
  • scuttle
  • Smarking
  • Spurl
  • YahooMyWeb
  • DZone
  • Internetmedia
  • Snap2r
  • Technorati

Leopard - Apache, PHP, MySQL tutti su Mac OS X allegramente

Vediamo come installare e configurare:

Premetto che Leopard è già dotato di Apache 2.2 e del PHP. Ma per esigenze personali ho compilato il PHP dai sorgenti distribuiti da PHP.net. E questo mi ha costretto anche a compilare Apache, in quanto quello compreso in Leopard è a 64bit mentre la libphp5.so compilata dai sorgenti è a 32bit ed impedisce al web server persino di avviarsi.

Fasi Preliminari

E’ necessario installare i tool di sviluppo che trovate direttamente nel DVD di installazione di Leopard. Inseritelo nel lettore del vostro Mac, aspettate che parta lo splashscreen.

 

Cliccate su Optional Install per installare i tool XCode mediante il pacchetto XcodeTools.mpkg.

 

In questo modo saremo in grado di compilare tutti i sorgenti necessari senza particolari problemi. Avremo installato, fra l’altro, il compilatore gcc che ci servirà sia per Apache che per PHP.

Apache

Niente di più semplice. Leopard è già pronto con Apache 2.2. Dovete solo attivare la condivisione web nelle preferenze di sistema.

 

Fatto questo accedete via browser a http://localhost (o http://127.0.0.1). Vi si aprirà la pagina di conferma di installazione del webserver. Ma a noi non piace la DocumentRoot configurata di default, ed allora come prima cosa la cambieremo :)

Apriamo una finestra del terminale ed accediamo alla directory di Apache:

 

cd /etc/apache2

 

Il file di configurazione del webserver è il solito httpd.conf. Apriamolo con vim ed apportiamo le seguenti modifiche.

 

sudo vim httpd.conf
password:

 

Notato niente di strano? Ebbene si. Anche su Leopard è stato implementato il comando sudo per aprire ed accedere a file di sistema con tutti i privilegi.

 

Cerchiamo la riga:

 

DocumentRoot "/Library/WebServer/Documents"

 

E modifichiamola in:

 

DocumentRoot "/Users/VOSTROUTENTE/Sites"

 

E successivamente cerchiamo la riga:

 

<Directory "/Library/WebServer/Documents">

 

E modifichiamola in:

 

<Directory "/Users/VOSTROUTENTE/Sites">

 

Per VOSTROUTETE si intende il nome della directory che indentifica la root di sistema del vostro account. Nel mio caso è "davide". Ed inserendo la URI in questo modo la webroot sarà fisicamente nella directory "Siti" del vostro account. State attenti che nel finder il nome della directory che vedete è proprio "Siti", ma è solo un alias dovuto alla lingua italiana. Il nome di sistema dela directory è "Sites" e questo va scritto in ogni file di sistema che in qualche modo interessa questa direttiva.

 

Per rendere effettive le modifiche riavviamo il webserver:

 

sudo apachectl graceful

 

Ma abbiamo detto che il server Apache compreso nella distribuzione Apple non è compatibile con il php compilato dai sorgenti. Quindi, a configrazione ultimata e testata, ricompiliamo il web server dai sorgenti scaricati direttamente da Apache.org. Se lo fate oggi scaricherete la versione 2.2.8. Scompattate l’archivio un po’ dove vi pare, entrate nella directory e digitate il solito trittico di comandi.

sudo apachectl stop
cd httpd-2.2.8
./configure –enable-layout=Darwin –enable-mods-shared=all
make
sudo make install
sudo apachectl start

 

Fatto questo non ci sarà bisogno di riconfigurare il webserver per modificare la DocumentRoot. Andrà bene e verrà usato il file di configurazione precedentemente editato in /etc/apache2.

 

MySQL Server

Scaricate il pacchetto binario direttamente da MySQL.org. Installate il pacchetto mysql-5.0.51a-osx10.5-x86.pkg. Potete anche evitare di installare MySQLStartupItem, dato che al momento con Leopard non funziona. Ed anche il pannello di controllo aggiuntivo non va. Ma per quest’ultimo è stata rilasciata una versione funzionante, scaricabile qui.

 

Purtroppo non c’è ancora modo di avviare automaticamente il server all’avvio del sistema. La preferenza spuntata non funziona. Ma quantomeno risulta agevole avviarlo manualmente.

 

Librerie aggiuntive: libpng e libjpeg (opzionale)

Se abbiamo intenzione di usare le funzionalità date alla libreria GD del php, abbiamo la necessità di installare le librerie libpng e libjpeg. E’ possibile farlo direttamente utilizzando un archivio binario scaricabile a questo indirizzo. Per semplicità utilizzate il combo installer che in un sol colpo le installa entrambe.

 

Installazione PHP

Bene, siamo arrivati al clou della nostra avventura. Scaricato il pacchetto con i sorgenti, scompattiamo l’archivio ed accediamo alla directory da terminale.

 

cd php-5.2.5

Importante è la stringa di configurazione. Un ./configure –help può togliervi molti dubbi. In ogni caso la mia stringa è la seguente. Dopo il ./configure, i soliti comandi per compilare ed installare il pacchetto.

 


./configure –prefix=/usr/local/php5 –enable-calendar –with-apxs2=/usr/sbin/apxs –enable-mbstring –with-mysqli=/usr/local/mysql/bin/mysql_config –with-mysql=/usr/local/mysql/ –with-gd –enable-soap –with-zlib –with-jpeg-dir=/usr/local/bin –with-png-dir=/usr/local/bin
make
sudo make install
sudo apachectl graceful

 

Il comando install si occuperà anche di editare il file di configurazione di Apache per permettere il running della libreria libphp5.so. L’ultimo comando serve a far riavviare il webserver in modo da fargli caricare tutte le librerie necessarie.

 

Non ri rimane che testare l’installazione! Accediamo alla DocumentRoot e creiamo uno nuovo file. Chiamiamolo info.php. Con un qualsiasi editor di testo, scriviamo:

 

<?php phpinfo(); ?>

 

Salviamo e chiudiamo il file ed accediamo via browser a http://localhost/info.php.

phpMyAdmin

Anche qui è tutto molto semplice. Basta scaricare l’ultima release del web tool di amministrazione del server MySQL, scompattare l’archivio in /Users/VOSTROUTETE/Sites e magari rinominare la directory in phpmyadmin per maggior comodità.

 

Avendo avuto cura che il server MySQL sia avviato, accedete via browser a http://localhost/phpmyadmin/scripts/setup.php ed utilizzate l’interfaccia web per la configurazione.

 

Per un uso in locale, senza troppo star a pensare alla sicurezza di un pc che non sarà mai utilizzato come web server pubblico, basta selezionare:

 Via: http://www.davidonzo.com/po…c-os-x-allegramente/

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • blinkbits
  • BlinkList
  • blogmarks
  • co.mments
  • del.icio.us
  • De.lirio.us
  • digg
  • Fark
  • feedmelinks
  • Furl
  • LinkaGoGo
  • Ma.gnolia
  • NewsVine
  • Reddit
  • scuttle
  • Smarking
  • Spurl
  • YahooMyWeb
  • DZone
  • Internetmedia
  • Snap2r
  • Technorati

PHP Universal Feed Generator

 

Da ajaxray un ottimo script per generare feed RSS 1.0, RSS 2.0, atom.

Sito web: http://www.ajaxray.com/blog/2…20-and-atom/

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • blinkbits
  • BlinkList
  • blogmarks
  • co.mments
  • del.icio.us
  • De.lirio.us
  • digg
  • Fark
  • feedmelinks
  • Furl
  • LinkaGoGo
  • Ma.gnolia
  • NewsVine
  • Reddit
  • scuttle
  • Smarking
  • Spurl
  • YahooMyWeb
  • DZone
  • Internetmedia
  • Snap2r
  • Technorati

Next Page →


Commenti recenti:


Ultimi dal forum

Scaricare correttore ortografico italiano
Vari problemi
Installazione su server remoto
Installazione
Problema aggiornamento quantità prodotti carrello
Info
Bug utente + suggerimento formattazione
Problema cancellazione dalla mailing list
Problemi login
Problemi di visualizzazione nella home page
Fireworks appiattisce livelli quando salvo in png
Errore carrello
Requisiti server
Problema con le immagini
Problemi installazione