Ho un paio di questioni che non mi tornano..
Riguardo al seguente codice
Codice PHP:
$srv = $_SERVER["HTTP_USER_AGENT"];
$var=file('agent.txt');
for($i=0;$i<count($var);$i++) {
$var[$i]=explode(":",$var[$i]);
if (strpos($srv,$var[$i][0])) {
if (empty($os)) { $os = $var[$i][1]; }
$browser = $var[$i][1];
}
}
echo "Stai navigando con ".$browser;
?>
<? echo "Sistema operativo ".$os; ?>
Praticamente dopo aver ricavato i dati con HTTP_USER_AGENT, li confronto con un .txt che copio qui di seguito, in parte..
Windows NT 5.1:Windows XP
Windows NT 5.0:Windows 2000
Windows NT 4.90:Windows ME
Win95:Windows 95
MSIE:Internet Explorer
Firefox:FireFox
Lynx:Lynx
Opera:Opera
In base a cosa contiene $server (che poi risulta essere quello prima dei : nel file di testo), imposto inizialmente il $os con il valore dopo i :, e successivamente il browser utilizzato con lo stesso metodo.
Il tutto funziona con IE, mentre con Opera inspiegabilmente... almeno x me, quando ricerca il testo "Opera" nel .txt non lo trova.. se modifico il txt in
funziona!
L'altro inghippo è il dover mettere
per andare a capo.. perchè ho provato inserendo \n ma non c'è verso.. lo spazio me lo mette in fondo al codice php...