Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marathon: arriva il Fortnite hardcore
Marathon: arriva il Fortnite hardcore
Marathon è il titolo multiplayer competitivo del momento. Ecco quali sono le caratteristiche di gioco principali, insieme alle nostre prime considerazioni dopo qualche "run" nell'extraction shooter di Bungie
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare
A New York HP ha messo al centro della scena HP IQ, la piattaforma di IA locale da 20 miliardi di parametri. L’abbiamo vista in funzione: è uno strumento che funziona, pensato per un target specifico, con vantaggi reali e limiti altrettanto evidenti
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è
La PNY GeForce RTX 5080 Slim OC si distingue nel panorama delle GPU di fascia alta per il design compatto a due slot, ispirato alla NVIDIA GeForce RTX 5080 Founders Edition. In questo test analizziamo comportamento termico e prestazioni in gioco, valutando se il formato ridotto comprometta o meno l'esperienza complessiva rispetto alle soluzioni più ingombranti presenti sul mercato.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-08-2006, 15:01   #1
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
[PHP] Piccolo dubbio su include, require, header

Ciao ragazzi!
Mi sono avvicinato da poco al php e sto provando a covertire una mia vecchia applicazione web scritta in jsp. Ho, però, alcuni dubbi sull'uso di include, require ed header.
Conosco le "caratteristiche" e le differenze tra include, require e header ma non riesco a capire il campo di applicazione!
Vi faccio un esempio per spiegarmi meglio.

Codice PHP:
include("config.inc.php");

if (
$_POST['submit']){
    if ((
$_POST['username'] == '') or ($_POST['password'] == '')){
        
$error 'Inserire nome utente e/o password';
    } else{
        
$conn mysqli_connect($db_host$db_user$db_password$db_name);
            
        if (!
$conn) {
            echo 
"Si è verificato un errore durante la connessione al server MySQL";
            exit();
        }
        
        
$sql 'SELECT IdUtenti, CONCAT_WS(\'  \', Cognome, Utenti.Nome) AS Utente, Livello, Abilitato, ';
        
$sql .= 'CONCAT_WS(\' - \', CodFiliali, CONCAT_WS(\' \', Filiali.Nome, Citta)) AS Filiale ';
        
$sql .= 'FROM Utenti INNER JOIN Filiali ON Filiali_CodFiliali = CodFiliali ';
        
$sql .= 'WHERE Username = \'' $_POST['username'] . '\' AND Passwd = \'' $_POST['password'] . '\'';
        
        
$result mysqli_query($conn$sql); 
        if (
mysqli_num_rows($result) > 0){
            while (
$row mysqli_fetch_assoc($result)){
                if (
$row["Abilitato"] == 1){
                    include(
"default.php");
                } else{
                    
$error 'Utente non abilitato';
                }
            }
        } else{
            
$error 'Nome utente e/o password errata';
        }
    }
    if (
$error){
        include(
"index.tpl"); 
    }
} else{
    include(
"index.tpl"); 


Questa è la index.php, contentente il codice per autenticarsi all'area privata del sito. Richiamandola per la prima volta, viene visualizzato il contenuto della index.tpl (contenente il codice.html). Inseriti username e password, se l'autenticazione va a buon fine, dev'essere visualizzata la pagina default.php, in caso contrario nuovamente la index.tpl. E' corretto l'uso che ho fatto degli include? O devo cambiare qualcosa?
Grazie
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
Old 23-08-2006, 20:35   #2
loris_p
Senior Member
 
L'Avatar di loris_p
 
Iscritto dal: Aug 2006
Messaggi: 365
per fare ciò che desideri devi usare la funzione header, la quale invia headers http al browser..per redirezionare l'utente devi inserire la funzione prima di qualsiasi output altrimenti ti darà errore headers already sent
usando gli include non fai altro che includere del codice, senza redirigere il browser in un'altra pagina..
breve ripasso:
include: include del codice nella pagina nel punto in cui viene invocata la funzione
require: come include solo che se il file non riesce ad essere incluso da errore
header: invia headers http

la funzione come la dovrai usare tu è (al posto degli include):
header("Location: <pagina>");
loris_p è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 09:38   #3
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
Quote:
Originariamente inviato da loris_p
per fare ciò che desideri devi usare la funzione header, la quale invia headers http al browser..per redirezionare l'utente devi inserire la funzione prima di qualsiasi output altrimenti ti darà errore headers already sent
usando gli include non fai altro che includere del codice, senza redirigere il browser in un'altra pagina..
breve ripasso:
include: include del codice nella pagina nel punto in cui viene invocata la funzione
require: come include solo che se il file non riesce ad essere incluso da errore
header: invia headers http

la funzione come la dovrai usare tu è (al posto degli include):
header("Location: <pagina>");
Parli di tutti gli include presenti nel codice che ho postato, o ti riferisci solo a quello relativo all'autenticazione andata a buon fine?
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 10:06   #4
loris_p
Senior Member
 
L'Avatar di loris_p
 
Iscritto dal: Aug 2006
Messaggi: 365
per tutti i punti in cui dovevi redirigere l'utente o alla pagina stessa o all'altra, quindi qui:
Codice PHP:
if (mysqli_num_rows($result) > 0){
            while (
$row mysqli_fetch_assoc($result)){
                if (
$row["Abilitato"] == 1){
                    include(
"default.php");
                } else{
                    
$error 'Utente non abilitato';
                }
            }
        } else{
            
$error 'Nome utente e/o password errata';
        }
    }
    if (
$error){
        include(
"index.tpl");
    }
} else{
    include(
"index.tpl"); 
mentre l'include iniziale è giusto..

p.s. tutto il sistema di login comunque non è il massimo, perché sarebbe buona regola creare un file php che controlla che l'utente sia loggato in base alla sessione ed includerlo in ogni pagina protetta..
se un utente scrive direttamente l'indirizzo della pagina post autenticazione adesso riuscirebbe ad accedervi giusto?
loris_p è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 10:20   #5
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
Quote:
Originariamente inviato da loris_p
per tutti i punti in cui dovevi redirigere l'utente o alla pagina stessa o all'altra, quindi qui:
Codice PHP:
if (mysqli_num_rows($result) > 0){
            while (
$row mysqli_fetch_assoc($result)){
                if (
$row["Abilitato"] == 1){
                    include(
"default.php");
                } else{
                    
$error 'Utente non abilitato';
                }
            }
        } else{
            
$error 'Nome utente e/o password errata';
        }
    }
    if (
$error){
        include(
"index.tpl");
    }
} else{
    include(
"index.tpl"); 
mentre l'include iniziale è giusto..

p.s. tutto il sistema di login comunque non è il massimo, perché sarebbe buona regola creare un file php che controlla che l'utente sia loggato in base alla sessione ed includerlo in ogni pagina protetta..
se un utente scrive direttamente l'indirizzo della pagina post autenticazione adesso riuscirebbe ad accedervi giusto?

La pagina che ti ho postato è solo una prova
Comunque, potresti farmi un esempio per essere più chiaro?
Grazie
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 10:33   #6
loris_p
Senior Member
 
L'Avatar di loris_p
 
Iscritto dal: Aug 2006
Messaggi: 365
esempio:
Codice:
if(utente_loggato_correttamente)
            header("Location: autenticato.php");
          else
            header("Location: login.php");
questo è un esempio molto semplice tanto per spiegare come si usa header in questi casi..poi per usare le sessioni è un'altra storia
loris_p è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 10:57   #7
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
Quote:
Originariamente inviato da loris_p
esempio:
Codice:
if(utente_loggato_correttamente)
            header("Location: autenticato.php");
          else
            header("Location: login.php");
questo è un esempio molto semplice tanto per spiegare come si usa header in questi casi..poi per usare le sessioni è un'altra storia
Allora avevo capito male quello che avevi scritto
Il codice di autenticazione che ho postato è solo una prova ed è incompleto
Se l'autenticazione va a buon fine, imposto a true una variabile che memorizzo in una sessione (almeno in jsp facevo così), ed in ogni pagina protetta verifico prima di ogni altra cosa il valore di questa variabile
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 13:03   #8
loris_p
Senior Member
 
L'Avatar di loris_p
 
Iscritto dal: Aug 2006
Messaggi: 365
Quote:
Se l'autenticazione va a buon fine, imposto a true una variabile che memorizzo in una sessione (almeno in jsp facevo così), ed in ogni pagina protetta verifico prima di ogni altra cosa il valore di questa variabile

attenzione!! a meno che non sia una cosa importante questa scelta non è sicurissima..soprattutto se la variabile ha un nome tipo logged o cose simili..in questo modo se un utente si logga in un'altro sito che (ironia della sorte) utilizza la stessa variabile risulta loggato anche sul tuo
la soluzione più sicura è salvare in sessione nome utente e password controllando nel database ogniqualvolta accedi ad una pag protetta tramite il tuo file che includerai ad ogni pagina
loris_p è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 13:17   #9
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
Quote:
Originariamente inviato da loris_p

attenzione!! a meno che non sia una cosa importante questa scelta non è sicurissima..soprattutto se la variabile ha un nome tipo logged o cose simili..in questo modo se un utente si logga in un'altro sito che (ironia della sorte) utilizza la stessa variabile risulta loggato anche sul tuo
la soluzione più sicura è salvare in sessione nome utente e password controllando nel database ogniqualvolta accedi ad una pag protetta tramite il tuo file che includerai ad ogni pagina
Cavolo, questa cosa la ignoravo del tutto! In nessun libro di quelli letti (asp, jsp, php) se ne parla!
Quindi, vediamo se ho capito...Visualizzo la pagina di login e ad autenticazione avvenuta, memorizzo in una sessione i dati utente. Quando l'utente richiede pagina_protetta.php con una include richiamo una pagina all'interno della quale controllerò nuovamente i dati di login.
Ho capito bene?
Scusami, ho ancora una domanda su include ed header
Se devo visualizzare i dati di una query non mi conviene utilizzare la include? Spiego meglio. Ho una pagina query.php che legge da un db e mi stampa i record selezionati. Senza passare il controllo ad un'altra pagina, non mi conviene includere query.tpl per visualizzare i risultati?
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 13:24   #10
loris_p
Senior Member
 
L'Avatar di loris_p
 
Iscritto dal: Aug 2006
Messaggi: 365
Quote:
Cavolo, questa cosa la ignoravo del tutto! In nessun libro di quelli letti (asp, jsp, php) se ne parla!
effettivamente non c'è una grande attenzione a questo nella manualistica
Quote:
Quindi, vediamo se ho capito...Visualizzo la pagina di login e ad autenticazione avvenuta, memorizzo in una sessione i dati utente. Quando l'utente richiede pagina_protetta.php con una include richiamo una pagina all'interno della quale controllerò nuovamente i dati di login.
proprio così
il tuo script check.php dovrà controllare i dati utente (se arrivano dal form da quello, altrimenti dalle variabili di sessione) e reindirizzare con gli header o alla pagina di login o non fare nulla (infatti se lo script viene incluso all'inizio della pagina e non fa niente perché l'utente è loggato, non ci si accorge di nulla)

p.s. se non è molto chiaro più tardi (perché ce l'ho in un'altra macchina) ti posto lo script responsabile del controllo..
in questo modo sei molto più sicuro nelle autenticazioni e con piccolissime modifiche al file che controlla puoi proteggere le pagine di qualsiasi progetto

edit:
Quote:
Se devo visualizzare i dati di una query non mi conviene utilizzare la include? Spiego meglio. Ho una pagina query.php che legge da un db e mi stampa i record selezionati. Senza passare il controllo ad un'altra pagina, non mi conviene includere query.tpl per visualizzare i risultati?
assolutamente si
più rendi il tuo lavoro modulare sfruttando le inclusioni più fatica risparmi e più elegante rimane il codice (se devi fare la stessa tabella in un'altra pagina ti basta includere quel file e non riscrivere il codice )
questo potentissimo strumento è ciò che finalmente ha sconfitto definitivamente i maledettissimi frames

Ultima modifica di loris_p : 24-08-2006 alle 13:27.
loris_p è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 13:38   #11
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
Quote:
Originariamente inviato da loris_p
proprio così
il tuo script check.php dovrà controllare i dati utente (se arrivano dal form da quello, altrimenti dalle variabili di sessione) e reindirizzare con gli header o alla pagina di login o non fare nulla (infatti se lo script viene incluso all'inizio della pagina e non fa niente perché l'utente è loggato, non ci si accorge di nulla)

p.s. se non è molto chiaro più tardi (perché ce l'ho in un'altra macchina) ti posto lo script responsabile del controllo..
in questo modo sei molto più sicuro nelle autenticazioni e con piccolissime modifiche al file che controlla puoi proteggere le pagine di qualsiasi progetto
E' tutto chiaro, ma se mi posti il codice mi fai un grande favore. A volte è meglio vederle scritte le cose

Quote:
Originariamente inviato da loris_p
assolutamente si
più rendi il tuo lavoro modulare sfruttando le inclusioni più fatica risparmi e più elegante rimane il codice (se devi fare la stessa tabella in un'altra pagina ti basta includere quel file e non riscrivere il codice )
questo potentissimo strumento è ciò che finalmente ha sconfitto definitivamente i maledettissimi frames
Quindi, in linea di massima devo utilizzare header quando devo passare il controllo ad un'altra pagina (ad esempio nel caso dell'autenticazione), mentre include o require quando devo solo includere del codice particolare (sia php che html necessari per impaginare i risultati di una query, ad esempio).
Confermi tutto?
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 13:48   #12
loris_p
Senior Member
 
L'Avatar di loris_p
 
Iscritto dal: Aug 2006
Messaggi: 365
Quote:
E' tutto chiaro, ma se mi posti il codice mi fai un grande favore. A volte è meglio vederle scritte le cose
ok tra un po' te lo faccio avere
Quote:
Quindi, in linea di massima devo utilizzare header quando devo passare il controllo ad un'altra pagina (ad esempio nel caso dell'autenticazione), mentre include o require quando devo solo includere del codice particolare (sia php che html necessari per impaginare i risultati di una query, ad esempio).
confermo..almeno come utilizzo di base..
va però aggiunto che include e require possono essere usati per includere qualsiasi porzione di codice che pensi potresti dover ripetere, ed header è una funzione che non serve solo al redirect..usata come ti ho detto fa quello, ma ciò che fa in generale è molto più vasto: invia headers http al browser
se vuoi approfondire l'argomento visita questo link e vedrai che enorme quantità di headers che puoi inviare (sempre nella forma
Codice PHP:
header("<testo dell'header>"); 
p.s. per le pagine da proteggere ti consiglio di includere la pagina di controllo con require, non include, poiché è assolutamente indispensabile che ci sia (se non venisse inclusa la pagina protetta risulterebbe visibile )

Ultima modifica di loris_p : 24-08-2006 alle 14:04.
loris_p è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 14:11   #13
loris_p
Senior Member
 
L'Avatar di loris_p
 
Iscritto dal: Aug 2006
Messaggi: 365
eccomi qui..
allora, questo file è quello che dovrai includere in tutte le pagine che vorrai proteggere con autenticazione
Codice PHP:
<?
session_start
();

//caso non loggato
if (!isset($_SESSION['username']) || !isset($_SESSION['password']))
{
    
//caso tentativo di login effettuato
    
if (isset($_POST['username']) && isset($_POST['password'])) 
    {
        
$_SESSION['username']=$_POST['username'];
        
$_SESSION['password']=$_POST['password'];
    }
    else
    {
        
session_unset(); 
        
session_destroy();
        
header("Location:http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/login.php");
        die();
    }
}

//apre connessione al db
$dbsession=mysql_connect("host","user","password")
                        or die(
"Connessione al database server non riuscita.<br>");
mysql_select_db("database_name")
                        or die(
"Connessione al database non riuscita.<br>");
$query="SELECT realname 
        FROM amministratori 
        WHERE username='"
.$_SESSION['username']."' 
        AND password='"
.md5($_SESSION['password'])."';";
$result=mysql_query($query);
mysql_close($dbsession);

if (!(
$riga=mysql_fetch_array($result))) 
{
    
//caso login errato
    
session_unset(); 
    
session_destroy();
    
header("Location: http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/login.php?err=1");
    die();
}
//caso login corretto
else
{
    
$_SESSION['realname']=$riga['realname'];
}
?>
come vedi la pagina dove ho il form si chiama login.php, la query naturalmente puoi rimpiazzarla con la tua e nota bene: nel controllo post query se l'utente c'è non fa altro che settare anche il nome vero in sessione (se la tua tabella non ce l'ha semplicemente non mettere l'else..io lo uso per fare cose del tipo "buongiorno signor mario rossi"); se invece la query non da risultati distrugge la sessione e reinvia al form, cosa che fa anche se la sessione non è ancora settata..
loris_p è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 14:31   #14
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
Quote:
Originariamente inviato da loris_p
eccomi qui..
allora, questo file è quello che dovrai includere in tutte le pagine che vorrai proteggere con autenticazione
Codice PHP:
<?
session_start
();

//caso non loggato
if (!isset($_SESSION['username']) || !isset($_SESSION['password']))
{
    
//caso tentativo di login effettuato
    
if (isset($_POST['username']) && isset($_POST['password'])) 
    {
        
$_SESSION['username']=$_POST['username'];
        
$_SESSION['password']=$_POST['password'];
    }
    else
    {
        
session_unset(); 
        
session_destroy();
        
header("Location:http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/login.php");
        die();
    }
}

//apre connessione al db
$dbsession=mysql_connect("host","user","password")
                        or die(
"Connessione al database server non riuscita.<br>");
mysql_select_db("database_name")
                        or die(
"Connessione al database non riuscita.<br>");
$query="SELECT realname 
        FROM amministratori 
        WHERE username='"
.$_SESSION['username']."' 
        AND password='"
.md5($_SESSION['password'])."';";
$result=mysql_query($query);
mysql_close($dbsession);

if (!(
$riga=mysql_fetch_array($result))) 
{
    
//caso login errato
    
session_unset(); 
    
session_destroy();
    
header("Location: http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/login.php?err=1");
    die();
}
//caso login corretto
else
{
    
$_SESSION['realname']=$riga['realname'];
}
?>
come vedi la pagina dove ho il form si chiama login.php, la query naturalmente puoi rimpiazzarla con la tua e nota bene: nel controllo post query se l'utente c'è non fa altro che settare anche il nome vero in sessione (se la tua tabella non ce l'ha semplicemente non mettere l'else..io lo uso per fare cose del tipo "buongiorno signor mario rossi"); se invece la query non da risultati distrugge la sessione e reinvia al form, cosa che fa anche se la sessione non è ancora settata..

Grazie per l'aiuto, sei stato gentilissimo!
Solo una domanda. Prima hai scritto che grazie agli include è possibile "eliminare" i frames.
Sai dove posso trovare un esempio a riguardo? Per ora non sono riuscito a trovare nulla
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 14:39   #15
loris_p
Senior Member
 
L'Avatar di loris_p
 
Iscritto dal: Aug 2006
Messaggi: 365
figurati
per quanto riguarda i frames non so indicarti alcun esempio perché non li ho mai usati per principio, ma te ne faccio uno velocissimo:
un classico nell'uso dei frames è la barra laterale con i links..
bene il frame può essere evitato creando una pagina con i soli links, ad esempio una semplice lista
Codice HTML:
<ul>
  <li><a>link1</a></li>
  <li><a>link2</a></li>
  <li><a>link3</a></li>
</ul>
chiamata links.html ed includerla in ogni pagina, poi con i CSS si sistema il layout
attenzione: è buona regola dare una controllata al codice prodotto perché se includi pagine che magari hanno già i tag <html> o cose simili la pagina non è validata..per questo io di solito le minipaginette le creo in una cartella include in modo da sapere che ciò che c'è li dentro se incluso non da problemi di validazione ma se usato da solo si (links.html da sola non è una pagina html valida)
loris_p è offline   Rispondi citando il messaggio o parte di esso
Old 24-08-2006, 14:45   #16
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
Quote:
Originariamente inviato da loris_p
figurati
per quanto riguarda i frames non so indicarti alcun esempio perché non li ho mai usati per principio, ma te ne faccio uno velocissimo:
un classico nell'uso dei frames è la barra laterale con i links..
bene il frame può essere evitato creando una pagina con i soli links, ad esempio una semplice lista
Codice HTML:
<ul>
  <li><a>link1</a></li>
  <li><a>link2</a></li>
  <li><a>link3</a></li>
</ul>
chiamata links.html ed includerla in ogni pagina, poi con i CSS si sistema il layout
attenzione: è buona regola dare una controllata al codice prodotto perché se includi pagine che magari hanno già i tag <html> o cose simili la pagina non è validata..per questo io di solito le minipaginette le creo in una cartella include in modo da sapere che ciò che c'è li dentro se incluso non da problemi di validazione ma se usato da solo si (links.html da sola non è una pagina html valida)
Ti ringrazio ugualmente! Farò una ricerca approfondita su google
Ciao
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare HP Imagine 2026: abbiamo visto HP IQ all’opera, ...
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è PNY RTX 5080 Slim OC, sembra una Founders Editio...
Wi-Fi 7 con il design di una vetta innevata: ecco il nuovo sistema mesh di Huawei Wi-Fi 7 con il design di una vetta innevata: ecc...
Core Ultra 7 270K Plus e Core Ultra 7 250K Plus: Intel cerca il riscatto ma ci riesce in parte Core Ultra 7 270K Plus e Core Ultra 7 250K Plus:...
GeForce RTX 3080 raffreddata con un diss...
Proofpoint mette in sicurezza gli agenti...
Annunci falsi su Bakeca con dati veri di...
Attenzione alla truffa dell'assegno di A...
Addio al mito delle batterie a stato sol...
400 milioni e un obiettivo ambizioso: Re...
TCL 2026: la tecnologia SQD-Mini LED arr...
Gli aggiornamenti arriveranno, ma non si...
Monopattini elettrici: addio "Far W...
Mistral AI raccoglie 830 milioni di doll...
Hacker iraniani di Handala violano la Gm...
Chi è Eddie Dalton: il cantante d...
OVHcloud mette l'Italia al centro della ...
Zeekr 007 GT sold out in Cina, si passa ...
Hisense QLED 4K da 98'' e 85'' con 144Hz...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 17:23.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v