Pagina 1 di 3 123 UltimoUltimo
Visualizzazione risultati 1 fino 30 di 87

Discussione: Collegamento a segmento html

  1. #1
    Guest

    Predefinito Collegamento a segmento html

    E' possibile nel bel mezzo del tag <body> inserire un collegamento a un file contenente un pezzo di html (senza ricorrere a <iframe>)? Del tipo:

    <html>
    <head>
    <title>Prova</title>
    </head>
    <body>

    <!-- Codice che richiami i tags di file.html -->
    <link href="file.html" type="text/html">

    </body>
    </html>

    E nel file "file.html":

    <img src="img.gif" alt="">

    ... assieme a altro codice?
    Ve lo chiedo perché mi servirebbe per il mio sito, che non è basato su frame, in modo che a ogni pagina venisse richiamato un file contenente il segmento di codice per visualizzare il menù, cosicchè venisse caricato una sola volta e che così io possa, con un paio di click, modificare il menù che influenza tutte le pagine. Come avviene per i fogli di stile esterni.


    Grazie!

  2. #2
    Ospite Guest

    Predefinito

    con php sì...

    <html>
    <head>
    <title>Prova</title>
    </head>
    <body>
    <?php
    include("file.html");
    ?>
    </body>
    </html>

  3. #3
    L'avatar di smilzo666
    smilzo666 non è connesso Utente
    Data registrazione
    22-09-2003
    Residenza
    La Capitale
    Messaggi
    114

    Predefinito

    puoi usare le SSI (Server Side Include)

    basta che scrivi: <!--#include virtual="filename.html" -->
    per includere dentro la tua pagina il codice html contenuto in filename.html.

    Unica cosa da ricordare è che le pagine che contengono questo tag devono avere estensione shtml e non html.
    "Vuoi rendere impossibile per chiunque opprimere un suo simile? Allora, assicurati che nessuno possa possedere il Potere."
    - M. Bakunin -

  4. #4
    Guest

    Predefinito

    Grazie mille. Mi sa che passerò da html a php. A proposito: tutti i tag che usavo con l'html posso usarli col php?

  5. #5
    Ospite Guest

    Predefinito

    sì... il php crea dell'html...
    i tag devi però metterli fuori da <?php e ?> che delimitano il codice php... tutto quello fuori è html puro...

  6. #6
    Guest

    Predefinito

    Non mi funziona include...
    ho scritto nel file:

    <?php
    include("bar.php");
    ?>

    e nell'altro ho messo:

    <br>
    ...
    <br>

    ma non funziona. Perché?

  7. #7
    Guest

    Predefinito

    forse perché è in una tabella?

  8. #8
    Guest

    Predefinito

    Ho creato 3 files di prova:

    start.php

    <html>
    <head>
    <title>Frafra</title>
    </head>
    <body>
    <table width="100%" border="1" cellpadding="0" cellspacing="0">
    <tr>
    <td>
    Link
    </td>
    <td>

    end.php

    </td>
    </tr>
    </table>
    </body>
    </html>

    index.php

    <?include("start.php");?>
    Testo
    <?include("end.php");?>

    Non dovrebbe essere interpretato così?

    <html>
    <head>
    <title>Frafra</title>
    </head>
    <body>
    <table width="100%" border="1" cellpadding="0" cellspacing="0">
    <tr>
    <td>
    Link
    </td>
    <td>
    Testo
    </td>
    </tr>
    </table>
    </body>
    </html>

  9. #9
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Solitamente i file che si includono vengono inclusi in pagine che stanno in cartelle diverse, dunque è più che consigliato indicare nell'include il percorso assoluto del file.
    Bada bene che questo percorso non è un URL ma è un path fisico, dunque per un percorso assoluto devi sempre scrivere:

    include("/membri/frafra/cartella/start.php");

    se vuoi ancora altre info basta che cerchi nel forum con le parole chiave "include membri assoluta" cose simili..
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  10. #10
    Guest

    Predefinito

    Visto che il mio sito è frafra.altervista.org, cosa dovrei scrivere se index.php e gli altri sono nella directory principale?

  11. #11
    Guest

    Predefinito

    se vuoi qualcosa di piu' cariro cosi' da includere le pagine tramite la stringa del broswer,cioè assegni la variabile direttamente nel link ;)
    dovrebbe venire na cosa del genere:
    <?
    if($pagina!="") {
    include $pagina."";
    }
    else {
    include "index.htm";
    }
    ?>
    ora la pagina che dovrè aprirsi quando la variabile non è assegnata e la index.htm
    invece per includere le altre pagine basta che nel link scrivi :

    href="nomepagina.php?pagina=XXX.htm

    e si includera' la pagina che vuoi ;),o almeno si speraaa ehheheeh

  12. #12
    Guest

    Predefinito

    Ok. così praticamente si include un'altre pagina tramite link?

    Se io ho:

    index.php
    pagina1.php
    pagina2.php

    In cui in index.php c'è:

    <?
    if($pagina1.php!="") {
    include $pagina."";
    }
    else {
    include "pagina2.php";
    }
    ?>

    E nel menù metto:

    <a href="index.php?pagina1.php">Home page</a><br>
    <a href="index.php?pagina2.php">Applicazioni</a><br>

    non riesco a capire...

  13. #13
    Guest

    Predefinito

    allora in index.php c'è quel codice e poi nei link metti:

    index.php?pagina=pagina1.htm
    e nell antro index.php?pagina=pagina2.htm
    invece vedo che te hai inserito in else :

    else {
    include "pagina2.php";
    }
    se tu metti cosi' quando entri in index.php la prim apgian che si aprira' all'interno sara' pagina2.php
    Ultima modifica di Xsescott : 14-06-2004 alle ore 16.24.20

  14. #14
    Guest

    Predefinito

    index.php, appena dopo <body>:

    <?
    if($home.php!="") {
    include $p."";
    }
    else {
    include "home.php";
    }

    index.php, nel menù:

    <a href="index.php?p=home.php">.: Home page :.</a><br>
    <a href="index.php?p=applicazioni.php">.: Applicazioni :.</a><br>

    non è corretto?

  15. #15
    Guest

    Predefinito

    si dovrebbe essere giusto

  16. #16
    Guest

    Predefinito

    Notice: Undefined variable: home in c:\programmi\easyphp1-7\www\index.php on line 33

    Notice: Use of undefined constant php - assumed 'php' in c:\programmi\easyphp1-7\www\index.php on line 33

    Notice: Undefined variable: p in c:\programmi\easyphp1-7\www\index.php on line 34

    Warning: main(): Failed opening '' for inclusion (include_path='.;C:\Programmi\EasyPHP1-7\php\pear\') in c:\programmi\easyphp1-7\www\index.php on line 34

    praticamente mi dice che c'è un errore qua:

    if($home.php!="") {
    include $p."";
    }

  17. #17
    Guest

    Predefinito

    ops ma perche' hai assegnato variabili differenti??è normale che nn funge:PP,scusa ma perche' sei andato a mettere mani al codice??iop ero convinto che avessi cambiato il nome variabile ma sia nell if che nell include,altrimenti nn va ;)

    cmq fai cosi',copialo esattamente:
    Codice:
    <?
    if($p!="") {
    include $p."";
    }
    else {
    include "home.php";
    }
    ?>
    e i link li fai cosi:
    Codice:
    <a href="index.php?p=home.php">.: Home page :.</a><br>

  18. #18
    Guest

    Predefinito

    Notice: Undefined variable: p in c:\programmi\easyphp1-7\www\index.php on line 33

    l'errore è qui:

    if($p!="") {
    ecc.

  19. #19
    Guest

    Predefinito

    nn so che dirti,io nn vedo errori,aspettiamo la risp di qualcun altro,magari mi sbaglio io :)

  20. #20
    Guest

    Predefinito

    ci vuole un controllo sulla variabile prima:
    Codice PHP:
    <?
    if (isset($p) && $p!="") {
    include
    $p."";
    }
    else {
    include
    "home.php";
    }
    ?>
    domanda: ma perche' include $p.""? nn basta include $p?


    considerazione di sicurezza: questo script non controlla quello che c'e' nella variabile, ma visto che gli htaccess e htpasswd non ci sono non dovresti avere problemi, cmq se metterai pagine protette cambia lo script mettendo un'array

  21. #21
    Guest

    Predefinito

    si hai ragione,sl che prima volevo evitare di inserire l'estensioni alle variabili che si andavanoa richiamare,cosi' volevo fare cosi':
    include $p=.".php",poi siccome ho visto che la cosa si sarebbe fatta lunga ho evitato ma ho scordato le "" :PPP

    veniva cosi',invece di index.php?p=index.php
    ma bensi p=index senza estensione.

    cmq mi sa che è meglio il tuo di script :)

    scusa la mia ignoranza ma l'isset a che serve ora?
    Ultima modifica di Xsescott : 15-06-2004 alle ore 02.04.56

  22. #22
    Guest

    Predefinito

    sono andato a curiosre su un manuale ,vedendo che isset serve a restituire true se la variabile esiste,false il contrario.
    ora io dico,che differenza ha dal mio script,cioè nn riesco a capire la diferenza perche' con l if posto con valore null , se la variabile nn è assegnata grazie all'else mi include la pagina,quindi ha diciamo la setta funzione, aiutatemi helppp !?!?!?!?

  23. #23
    Guest

    Predefinito

    Funziona! Ma i link no...

  24. #24
    Guest

    Predefinito

    Citazione Originalmente inviato da FraFra
    Funziona! Ma i link no...
    che vuol dire che i link non funzionano?

    @ xsescott: isset ti dice se la variabile esiste o no, per fare il confronto $p!="" la variabile deve esistere! in particolare se chiami index.php?p=pag.htm allora $p esiste, ma se scrivi solo index.php (legittimo per la pag iniziale) $p non esiste, quindi non puoi fare un confronto, mettendo prima l'isset controlla se la var esiste prima di vedere il contenuto

  25. #25
    Guest

    Predefinito

    Va sull'home e basta.

  26. #26
    Guest

    Predefinito

    Ho controllato il ciclo e mi sembra giusto... mi ri-postate i link?

  27. #27
    Guest

    Predefinito

    Citazione Originalmente inviato da dxblade
    @ xsescott: isset ti dice se la variabile esiste o no, per fare il confronto $p!="" la variabile deve esistere! in particolare se chiami index.php?p=pag.htm allora $p esiste, ma se scrivi solo index.php (legittimo per la pag iniziale) $p non esiste, quindi non puoi fare un confronto, mettendo prima l'isset controlla se la var esiste prima di vedere il contenuto
    Ma non basterebbe mettere <? $p="";?>?

  28. #28
    Guest

    Predefinito

    @ xsescott: isset ti dice se la variabile esiste o no, per fare il confronto $p!="" la variabile deve esistere! in particolare se chiami index.php?p=pag.htm allora $p esiste, ma se scrivi solo index.php (legittimo per la pag iniziale) $p non esiste, quindi non puoi fare un confronto, mettendo prima l'isset controlla se la var esiste prima di vedere il contenuto
    In pratica fa la stessa cosa in questo caso!:)

  29. #29
    Guest

    Predefinito

    Ora che ci rifletto metà sì metà no: se $p="" si mette prima del menù è ok, altrimenti no. Giusto?

  30. #30
    Guest

    Predefinito

    Ma per i link?

Pagina 1 di 3 123 UltimoUltimo

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •