Ciao a tutti, finalmente è arrivato anche il mio momento per provare a scrivere una supposta...ehm una pillola.
Ho deciso di riportarvela, poichè in un mio forum, dopo che non l'ho più controllato per 2 settimane, mi si sono iscritti più di 100 utenti, bellissimo vero?
Peccato che tutti questi clienti, erano per lo più inglesi o non so di quale nazione, postavano i propri siti porno e/o altre cavolate...
Allora pensai di provare a programmare qualcosina, riferendomi a questo topic:

http://forum.html.it/forum/showthrea...hlight=nazioni


Ovviamente ciò che sto per riportare si può integrare per esempio con guestbooks o altro in cui l'utente possa inserire dei dati.
A questo punto iniziamo con lo script.
Allora questo è un backup che vi ho fatto che contiene una tabella, con campi (id,prefisso,nazione,actived).
Copiatelo e incollatelo nel vostro programma di amministrazione database così fate prima
Codice PHP:
CREATE TABLE `nazioni` (
  `
idmediumint(9NOT NULL auto_increment,
  `
prefissovarchar(30) default NULL,
  `
nazionevarchar(80) default NULL,
  `
activedvarchar(40NOT NULL default '',
  
PRIMARY KEY  (`id`)
ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=44 ;

-- 
-- 
Dump dei dati per la tabella `nazioni`
-- 

INSERT INTO `nazioniVALUES (3'af''af''1');
INSERT INTO `nazioniVALUES (4'ar''arabic''1');
INSERT INTO `nazioniVALUES (5'bg''bulgarian''1');
INSERT INTO `nazioniVALUES (6'ca''catalan''1');
INSERT INTO `nazioniVALUES (7'cs''czech''1');
INSERT INTO `nazioniVALUES (8'da''danish''1');
INSERT INTO `nazioniVALUES (9'de''german''1');
INSERT INTO `nazioniVALUES (10'el''greek''1');
INSERT INTO `nazioniVALUES (11'en''english''1');
INSERT INTO `nazioniVALUES (12'es''spanish''1');
INSERT INTO `nazioniVALUES (13'et''estonian''1');
INSERT INTO `nazioniVALUES (14'fi''finnish''1');
INSERT INTO `nazioniVALUES (15'fr''french''1');
INSERT INTO `nazioniVALUES (16'gl''galician''1');
INSERT INTO `nazioniVALUES (17'he''hebrew''1');
INSERT INTO `nazioniVALUES (18'hi''hindi''1');
INSERT INTO `nazioniVALUES (19'hr''croatian''1');
INSERT INTO `nazioniVALUES (20'hu''hungarian''1');
INSERT INTO `nazioniVALUES (21'id''indonesian''1');
INSERT INTO `nazioniVALUES (22'it''italian''1');
INSERT INTO `nazioniVALUES (23'ja''japanese''1');
INSERT INTO `nazioniVALUES (24'ko''korean''1');
INSERT INTO `nazioniVALUES (25'ka''georgian''1');
INSERT INTO `nazioniVALUES (26'lt''lithuanian''1');
INSERT INTO `nazioniVALUES (27'lv''latvian''1');
INSERT INTO `nazioniVALUES (28'ms''malay''1');
INSERT INTO `nazioniVALUES (29'nl''dutch''1');
INSERT INTO `nazioniVALUES (30'no''norwegian''1');
INSERT INTO `nazioniVALUES (31'pl''polish''1');
INSERT INTO `nazioniVALUES (32'pt''portuguese''1');
INSERT INTO `nazioniVALUES (33'ro''romanian''1');
INSERT INTO `nazioniVALUES (34'ru''russian''1');
INSERT INTO `nazioniVALUES (35'sk''slovak''1');
INSERT INTO `nazioniVALUES (36'sl''slovenian''1');
INSERT INTO `nazioniVALUES (37'sq''albanian''1');
INSERT INTO `nazioniVALUES (38'sr''serbian''1');
INSERT INTO `nazioniVALUES (39'sv''swedish''1');
INSERT INTO `nazioniVALUES (40'th''thai''1');
INSERT INTO `nazioniVALUES (41'tr''turkish''1');
INSERT INTO `nazioniVALUES (42'uk''ukrainian''1');
INSERT INTO `nazioniVALUES (43'zh''chinese''1'); 
A questo punto prendiamo un file e chiamatelo come volete:
Codice PHP:
<?php

require ("connessione_database.php");
$exp=explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
$select=mysql_query("SELECT * FROM nazioni Where actived='0' && prefisso='$exp[0]'",$db);


if (
$nazioni=mysql_fetch_array($select)) {


Header("Location:block.php");
exit;

}
else {


Header("Location:guestbook.php");
exit;

}



?>
Esempio di cosa riporta un "echo $_SERVER['HTTP_ACCEPT_LANGUAGE']; "

it,it-it;q=0.8,en-us;q=0.5,en;q=0.3

--------------------------------------------
--------------------------------------------
Come potete notare, dopo essermi connesso al database e dopo aver effettuato la select, esplodo la stringa che riporta $_SERVER['HTTP_ACCEPT_LANGUAGE'] e poi prendo $exp[0] che conterrebbe 'it' (quindi il primo valore dell'array) nella stringa che vi ho appena fatto vedere, poi, controllo se $exp[0] è settato a 1, se non è settato 1, faccio una redirect in block.php, che è la pagina che dice all'utente "ADDIO John, non puoi entrare!", altrimenti lo facciamo scrivere nel nostro guestbook o quel che sia.

Spero che vi sia piaciuta la mia pillolina, è la prima che scrivo e sono piuttosto giovane, spero che abbiate capito quello che ho scritto.
Adesso tocca a voi provare.
Aspetto le vostre impressioni e sicuramente molti di voi la sapranno migliorare con il loro sapere, io mi fermo qui perchè ho molte cose da imparare.

Ciao e grazie per l'attenzione

Alberto