Accorciare Stringa HTTP_USER_AGENT

max_400

Utente Attivo
23 Gen 2009
770
0
16
caltanissetta
max400.forumfree.it
Cari Sorcetti e cari Felini.
Ho l'esigenza di accorciare quel comando per visualizzare le informazioni che
riguardano il visitatore che guarda una mia pagina quindi oltre all'ip ho aggiunto
le informazioni che riguardano il Sistema Operativo, il Browser, il Linguaggio in uso.
il tutto si racchiude in quel comando:

PHP:
$stringa=$_SERVER['HTTP_USER_AGENT'];

Dopo un paio di scarabocchi, mi sono reso conto che è necessario avere
almeno 3 gruppi di array.
Il primo contiene i vari sistemi Operativi: Windows NT, Windows 7, Windows 2000 ecc..
Il secondo i vari Browser (so che sono tanti ma basta mettere i più diffusi: Firefox, Explorer, Opera Crhome,ecc
Il terzo il linguaggio in uso: it, US ecc...

avevo fatto un piccolo script è lo testato con 2 browser però è solo uno scarabocchio
il risultato finale tenendo conto del mio sistema operativo

37.193.161.54 - Windows NT - Firefox/3.6.28 - it;

in un altro computer potrei avere invece
87.293.151.54 - Windows 7 - K-Meleon - US;

Se qualkuno di voi è in grado di creare uno script completo e ovviamente sintetico.
penso sia utile un po per tutti.
Lo scopo rendere più veloce e leggibile la lettura e le informazioni sul visitatore.
Anzicchè una stringa di questo tipo eccessuivamente lunga
ip: 37.193.161.54 - Sistema operativo e browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28

Ps questo è lo scarabocchio utilizzando strstr e substr quello che avevo realizzato io penso che sia necessario utilizzare degli array cioè degli elenchi dei vari browser e poi eseguire il confronto... giusto?

PHP:
<?php
$ip=$_SERVER['REMOTE_ADDR'];
$stringa=$_SERVER['HTTP_USER_AGENT'];

$sistema1=strstr($stringa, 'Windows NT');
$sistema1filtro=substr($sistema1,0,10);

$sistema2=strstr($stringa, 'Windows 7');
$sistema2filtro=substr($sistema2,0,10);

$browser1=strstr($stringa, 'Firefox');
$browser2=strstr($stringa, 'K-Meleon');

$linguaggio=strstr($stringa, 'it');
$linguaggiofiltro=substr($linguaggio,0,3);

echo $stringa."<br>";
echo $ip." - ".$sistema1filtro.$sistema2filtro." - ".$browser1.$browser2." - ".$linguaggiofiltro;
?>

A voi le carte!
Grazie!
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao Max
per il sistema operativo
PHP:
<?php

function SistemaOperativo($agent) {
    $so = array(
        'Windows NT 6.2' => 'Win 8',
        'Windows NT 6.1' => 'Win 7',
        'Windows NT 6.0' => 'Win vista',
        'Windows NT 5.1' => 'Win XP',
        'Windows NT 5.0' => 'Win 2000',
        'Windows NT 4.90' => 'Win ME',
        'Win95' => 'Win 95',
        'Win98' => 'Win 98',
        'Mac|PPC' => 'Mac',
        'Linux' => 'Linux'
    );

    foreach ($so as $chiave => $valore) {
        if (strstr($agent, $chiave)) {
            return $valore;
        }
    }
    return 'S.O. non riconosciuto';
}

$sistemaOperativo = SistemaOperativo($_SERVER['HTTP_USER_AGENT']);

echo $sistemaOperativo;
?>
nell'array puoi aggiungere tutti i sistemi che conosci
puoi farti una funzione simile per i browser

Se usi questo sistema ricorda di mettere le versioni dello stesso sitema/browser in ordine decrescente
 
Discussioni simili
Autore Titolo Forum Risposte Data
G Pagina html in stringa PHP 2
I stampare una stringa echo PHP 2
K [PHP] Aggiungere caratteri ad una stringa in base alla lunghezza della stessa PHP 2
D convertire questo stringa in mysqli PHP 4
B Stringa sql per ricerca su più campi Database 1
C Dopo chiusura del tag php la stringa html va a capo PHP 1
Alex_70 Stringa che diventa un url PHP 6
Alex_70 Cerca testo all'interno di una stringa PHP 5
C Estrarre dati stringa Sql Database 1
MarcoGrazia Eliminare in automatico i caratteri spuri all'inizio e alla fine di una stringa Snippet PHP 0
A aggiungere stringa all'inizio di ogni riga di un file txt PHP 3
M Stringa con spazi nel menù a tendina PHP 4
MarcoGrazia Verifica di una stringa o di un nome proveniente da form Snippet PHP 0
R Confrontare il dominio di una mail con una stringa contenente un dominio personalizzato, tutto ciò in php o javascript PHP 0
K Cambiare font size su echo stringa variabile PHP 24
G lettura stringa alfanumerica MySQL 0
O query con date in formato stringa PHP 3
R [PHP] Aggiungere 90 minuti a stringa orario PHP 1
F [MS Access] Creare [stringa] da caselle combinate MS Access 0
A [Visual Basic] Trasformare stringa in ora Visual Basic 0
Monital [PHP]Far riconoscere stringa o numerico epr creazione campo tabella PHP 6
trattorino [PHP] link su stringa con @ PHP 3
C [PHP] Trovare simbolo unicode in stringa PHP 1
S [PHP] Estrarre dati colonna in una stringa PHP 6
C [PHP] Esecuzione comando contenuto in stringa PHP 2
F Recuperare una stringa in formato json con php PHP 0
C [PHP] SOSTITUIRE VALORI DENTRO STRINGA PHP 0
T [PHP] Estrarre stringa PHP 3
elpirata [PHP] Query per ricercare stringa in più colonne PHP 5
D [ASP] Passare in array stringa dinamica Classic ASP 2
M Javascript/Php. Stringa di testo a capo con alert Javascript 7
WebDr [ASP] Da una stringa a una data per SQL Classic ASP 2
L [PHP] Sostituire link da stringa PHP 3
L [Javascript] indirizzare stringa come nome input text Javascript 1
C [PHP] DEVO FAR SPUNTARE SOLO LE CONSONANTI DI UNA STRINGA PHP 1
M [PHP] Stringa con accenti e apostrofi PHP 4
S [PHP] estrarre numero da stringa PHP 5
F [Javascript] Controllo stringa jquery Javascript 4
M [PHP] stringa con tabulazioni orizzontali PHP 9
Monital [PHP] Creare un array da stringa con diversi spazi PHP 3
Jonn [PHP] Controllare l'inizio di una stringa PHP 5
E [PHP] inserire HTML in una stringa PHP 16
P Probelma estrazione stringa PHP 5
T campo data+ora: estrarre l'ora senza generare una stringa MS Access 2
S Problema trasformare una stringa in html object Javascript 0
M Ricavare da un database un valore numerico da stringa Classic ASP 1
M Inserire automaticamente il nome di un'immagine in una variabile di tipo stringa Sviluppo app per Android 1
L Modo per nascondere una parte variabile di una stringa PHP 0
Emix Splittare stringa e prenderne valore Javascript 1
A Isolare parte di una stringa PHP 1

Discussioni simili