collegamenti nella stessa pagina

 ::) Salve a tutti.

Premettendo che capisco poco o nulla di PHP, vengo subito al dunque:

nella mia pagina ho una tabella divisa in due colonne, quella di sinistra è occupata da un menu drag&drop con dei collegamenti ad altre pagine che si riversano nella colonna di destra dove ho messo un inframe.

La domanda è:

Esiste un modo in PHP che possa fare la stessa operazione senza inframe?

Ricordate che sono un dummies dell'informatica,vi prego perciò di spiegare passo passo se possibile.

Grazie dell'attenzione.  :bye:

inviato 11 anni fa
oltretutto
X 0 X

La cosa è possibile, ed è comunemente usata da tantissimi siti. Il problema è che richiede una minima conoscenza del php  :dunno:

La tecnica si basa sull'invio di un parametro tramite URL (indirizzo dei link) che specifica la pagina che di volta in volta si vuole visualizzare. Recuperato questo parametro si include il corretto file che andrà a realizzare la colonna di sinistra.

Prima di entrare nei dettagli di questa tecnica ti consiglio delle letture:

per il passaggio di parametri via URL:

- Il passaggio delle variabili e la gestione dello stato: Il metodo GET

- L'array $_GET - dati via URL

per l'inclusione di files:

- Corso PHP base: include - require - exit

Ora supponiamo che tu abbia un menu con due opzioni: "home" e "chi siamo". Gli URL dei link da creare dovranno essere del tipo www.tuosito.it/index.php?pag=home e www.tuosito.it/index.php?pag=chi_siamo

Nella pagina index.php (quella responsabile della creazione della tabella con le due colonne) dovrai mettere, al posto del richiamo dell'iframe, del codice PHP. Ad esempio:

<?php
if($_GET['pag'] == 'home') include('home.php');
if($_GET['pag'] == 'chi_siamo') include('chi_siamo.php');
?>

Le pagine home.php e chi_siamo.php saranno quelle che chiamavi con l'iframe.

 :bye:

risposto 11 anni fa
Gianni Tomasicchio
modificato 11 anni fa
X 0 X

:uglystupid: Ho capito come usare il richiamo php, però...c'è sempre un però...

 come faccio a mettere sempre nella colonna di destra un qualsiasi documento o immagine iniziale senza avere un accavallamento quando richiamo un'altra pagina?

Scusate se sono de coccio ma è l'ultima domanda che ti faccio dopo altre 360  Evil (scherzo)

Grazie per la pazienza.

By oltretutto

risposto 11 anni fa
oltretutto
X 0 X

E' semplice: nella colonna di destra, prima di mettere il codice PHP per richiamare la parte "variabile" delle tue pagine, devi inserire la parte "costante". Qualcosa di questo tipo:

<table width="100%"  border="1" cellspacing="0" cellpadding="2">
  <tr>
    <td><p><a href="index.php?pag=home">Home</a><br>
        <a href="index.php?pag=chi_siamo">Chi siamo</a><br>
        <a href="index.php?pag=contattaci">Contattaci</a>
    </p>
    </td>
    <td width="100%"><p>Questa testo viene sempre visualizzato! (parte "costante")</p>
   <?php
        // questa è la parte "variabile" della pagina
        if($_GET['pag'] == 'home') include('home.php');
        if($_GET['pag'] == 'chi_siamo') include('chi_siamo.php');
        if($_GET['pag'] == 'contattaci') include('contattaci.php');
        ?>
   </td>
  </tr>
</table>

 :bye:

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

 :-[ Sicuramente mi sono spiegato male.

Io vorrei che nella colonna di destra apparisse inizialmente una specie di presentazione e poi al richiamo della parte variabile, tale presentazione dovrebbe sparire, non aggiungersi.

Spero di essere stato chiaro.

Grazie della tua infinita bontà  :angel:

risposto 11 anni fa
oltretutto
X 0 X

Prova così:

<table width="100%"  border="1" cellspacing="0" cellpadding="2">
  <tr>
    <td><p><a href="index.php">Home</a><br>
        <a href="index.php?pag=chi_siamo">Chi siamo</a><br>
        <a href="index.php?pag=contattaci">Contattaci</a>
    </p>
    </td>
    <td width="100%">
        <?php
        if(!isset($_GET['pag']))
        {
            // carico la pagina di presentazione "home.php"
            include('home.php');
        }
        else
        {
            // carico una pagina richiesta da un link
            if($_GET['pag'] == 'chi_siamo') include('chi_siamo.php');
            if($_GET['pag'] == 'contattaci') include('contattaci.php');
        }
        ?>
    </td>
  </tr>
</table>

 :bye:

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

Scusa di tanto disturbo, ma è solo così che riesco ad imparare.

Risolto un problema me ne si è posto un altro:

La solita pagina, solita tabella (colonna sinistra menu, colonna destra presentazione e richiami).

-Problema:

  Al richiamo di "immagini"per esempio, vorrei che apparisse (sempre nella colonna destra) una "pagina cornice"   nel cui interno  una serie di immagini (tipo gallery), cliccando su di una di esse l'immagine originale   dovrebbe apparire sempre nella "pagina cornice"(charamente sempre nella colonna di destra).

A parte gli errori di sintassi, spero che il concetto sia stato compreso.

P.s.: Ti dispiace se faccio tutte queste ignobili domande?  ::)

risposto 11 anni fa
oltretutto
X 0 X

Mi dispiace darti questa risposta ma realizzare una gallery è un compito troppo difficile per un principiante  :dunno:

Non si tratta di poche righe di codice... è un lavoro lungo e abbastanza complesso.

Ti posso solo consigliare di dare un'occhiata a dei programmi PHP già pronti per la gestione delle gallerie di immagini. Ad esempio Coppermine

 :bye:

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

 :o Sinceramente volevo fare una galleria  meno articolata di [glow=green,2,300]Coppermine[/glow]  così ti riporto un esempio:

Questa è solita pagina (colonna sx menu, col. dx presentazione&richiami)

- http://oltretutto.altervista.org/oltrezine.php - selezionando "immagini curiose" e di seguito incredibili, richiamo la famosa "pagina cornice" e al suo interno un altra pagina con le miniature delle immagini. Fin qui OK.

Il piccolo problema è che se seleziono ad esempio la prima miniatura, l'immagine originale non si apre nella colonna di destra della pagina oltrezine.php, ma appare chiaramente nella pagina dove ho creato la "pagina cornice".

Io vorrei che la pagina cornice con tutte le immagini annesse e connesse, venissero visualizzate sempre nella colonna di destra della pagina oltrezine.php  :'(

Non penso che ci vogliano tante righe di codice  ;) per una cosa che con i frame si risolve in due secondi e un target.

Mi appello alla tua immancabile pazienza.  :bye:

risposto 11 anni fa
oltretutto
X 0 X

Quando parlavi di galleria pensavo intendessi quacosa di più complesso.. :P

Potresti usare per le miniature dei link del tipo: oltrezine.php?pag=foto&img=boccanaso. Così  $_GET['pag'] varrà "foto" e da questa informazione saprai che devi costruire la cornice, mentre $_GET['img'] varrà "boccanaso", ovvero la foto che devi mostrare. Quindi prima controlli il valore di $_GET['pag'] per includere la cornice e poi con il valore di $_GET['img'] crei il tag per l'immagine.

 :bye:

risposto 11 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda