Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    passare elenco casuale nella navigazione

    Buongiorno,
    ho un sito in cui compare un elenco di link in ordine casuale grazie a questo script:

    <?php
    $lista_di_indirizzi = array(
    'Azienda 1',
    'Azienda 2',
    'Azienda 3',
    'Azienda 4',
    );
    shuffle($lista_di_indirizzi);
    foreach ($lista_di_indirizzi as $lista_di_indirizzi) {
    echo "$lista_di_indirizzi ";
    }
    ?>

    che viene richiamato in ogni pagina con
    <? include("listabedandbreakfast.php"); ?>
    e nell'html con
    <?
    foreach ($lista_di_indirizzi as $lista_di_indirizzi)
    echo $lista_di_indirizzi;
    ?>

    Lo script funziona bene. Il problema riguarda però l'usabilità del sito. Infatti ogni volta che visito una pagina del menù quest'ultimo mi si ricarica ovviamente in un ordine casuale diverso anche in questa pagina creando non poca confusione al navigatore. Vedi www.bbsanteodoro.com/home.php

    Esiste uno script che mantenga il primo ordine di apparizione del menù anche in tutte le altre pagine? Ringrazio chi potrà essermi utile.

    Tengo a precisare che, come avrete notato, mi sto avvicinando ora al php e del libro che sto usando ho ancora tante pagine da leggere :-)

    Grazie ancora in anticipo. Lorenzo.

  2. #2
    risolvi il problema avviando la funzione con un if
    spiego in parole povere poi il codice esatto lo puoi saper solo tu :-)


    Codice PHP:
    <?php
    $lista_di_indirizzi 
    = array(
    [
    0]=>'[url="www.azienda1.it&x=0"]Azienda 1[/url]',
    [
    1]=>'[url="www.azienda2.it&x=1"]Azienda 2[/url]',
    [
    2]=>'[url="www.azienda3.it&x=2"]Azienda 3[/url]',
    [
    3]=>'[url="www.azienda4.it&x=3"]Azienda 4[/url]',
    );
    a questo punto ti basta
    Codice PHP:

    if(!isset($_GET['x']) ) 
    shuffle($lista_di_indirizzi);
    foreach (
    $lista_di_indirizzi as $lista_di_indirizzi) {
    echo 
    "$lista_di_indirizzi ";


    in questo modo mischi l'array solo se non esiste quel parametro, quindi se hai cliccato da altre parti e non quel menu.

    Attento che ti serve un modo x tenere in memoria però l'ordine (magari una sessione)

  3. #3
    Ciao e grazie intanto per la risposta,
    ho fatto come hai detto tu. Ma non è propro quello che vorrei ottenere.
    Vorrei tenere in memoria il primo ordine che appare entrando nel sito e portarmelo dietro per tutta la navigazione

    Sai consigliarmi qualcosa? Parlavi di creare una sessione se non sbaglio...
    Grazie se potrai essermi ancora utile :-)
    Lorenzo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.