Visualizzazione risultati 1 fino 26 di 26

Discussione: Creare link con ?nome=x

  1. #1
    Guest

    Predefinito Creare link con ?nome=x

    Salve vorrei chiedere come si fa a creare dei link nel proprio sito che hanno questo indirizzo:

    nomesito.altervista.org/?menu=vb

    xk devo ancora imparare il php ma non so cosa scrivere per trovare questa cosa, grazie in anticipo.
    Ultima modifica di lotz : 20-12-2010 alle ore 16.45.34 Motivo: errori ortografici

  2. #2
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    I link si fanno tutti allo stesso modo:

    Codice HTML:
    <a href="http://nomesito.altervista.org/?menu=vb">Testo</a>


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  3. #3
    Guest

    Predefinito

    e ma il codice completo quale sarebbe? cioè se io ho una pagina web vb.html e la voglio raggiungere come quella li come faccio? cioè serve un codice php? o altro?

    tipo questo si= http://bldrivelegend.altervista.org/
    Ultima modifica di lotz : 20-12-2010 alle ore 19.09.59 Motivo: dimenticanza esempio

  4. #4
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Se devi fare un banalissimo link non serve PHP, ma basta posizionare il codice di prima dentro la pagina HTML.


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  5. #5
    Guest

    Predefinito

    scusa ancora e per averla senza estensione?

  6. #6
    Guest

    Predefinito

    Citazione Originalmente inviato da lotz Visualizza messaggio
    scusa ancora e per averla senza estensione?
    Spero di interpretare bene il tuo pensiero.

    A te piace il fatto di non vedere il nome della pagina prima del "?", giusto?

    Se è così, devi sapere che un webserver ha impostata una pagina che cerca e carica di default se non ne vuiene specificata una (di solito index.htm, index.php, ecc..).

    Questo perchè se non fosse così quando inseriamo un indirizzo sulla barra del browser non andiamo da nessuna parte.
    In altre parole quando scriviamo www.miosito.it è comese scrivessimo www.miosito.it/index.php

    Detto questo scrivere www.miosito.it/?parametro=valore equivale a scrivere www.miosito.it/index.php?parametro=valore. Per cui è la pagina index.php che a te interessa.

    Spero di essere stato sufficientemente chiaro.

    Ciao

  7. #7
    Guest

    Predefinito

    si esatto ma come faccio a dagli il parametro e il valore ovvero posso dagli come valore un nome? se si come faccio ad impostarlo nel menù facendo si che quando clicco su quel valore mi si apra la pagina web con l'indirizzo ?parametro=nome senza che sia visibile nella barra il link tipo ../nome.php.

    Scusate ancora, l'HTML lo so usare e solo che questa cosa mi piace e voglio inserirla

  8. #8
    Guest

    Predefinito

    Citazione Originalmente inviato da lotz Visualizza messaggio
    si esatto ma come faccio a dagli il parametro e il valore ovvero posso dagli come valore un nome? se si come faccio ad impostarlo nel menù facendo si che quando clicco su quel valore mi si apra la pagina web con l'indirizzo ?parametro=nome senza che sia visibile nella barra il link tipo ../nome.php.

    Scusate ancora, l'HTML lo so usare e solo che questa cosa mi piace e voglio inserirla
    Scusa se te lo chiedo: ma sai solo HTML o anche PHP (o altri linguaggi serve-side)?

    Il passaggio di parametri di in puro HTML non ha senso!
    Il fatto che passi dei parametri presuppone che la pagina che li riceve sia una pagina dinamica che si compone proprio in base a tali parametri.

    Come ti dicevo se scrivi www.miosito.it/?a=1 in realtà è come se scrivessi www.miosito.it/index.php?a=1.
    Come si debba chiamare la pagina? In generale index. su LAMP dovrebbe essere la regola, ma nulla esclude configurazioni in cui la pagina indice possa chiamarsi lamiapaginapreferita.jsp.

    Su altervista index.php va bene.
    Poi magari puoi costruire una navigazione che carichi le pagine proprio in base al parametro ma di base chiami sempre la stessa pagina.

    Ad esempio puoi impostare una cosa del tipo www.miosito.it/?sez=home e poi dinamicamente far caricare la pagina home.html oppure homepage.php o ...

  9. #9
    Guest

    Predefinito

    ok, quindi diciamo il link è sempre la home e tramite frame passa a sezioni diverse^^ cmq per fare questo cosa devo fare ? cioè se al link home.php eve corrisponde ?sez=home scusate ancora , cmq diciamo che a una stringa deve corrisponde un link^^

  10. #10
    Guest

    Predefinito

    Citazione Originalmente inviato da lotz Visualizza messaggio
    ok, quindi diciamo il link è sempre la home e tramite frame passa a sezioni diverse^^ cmq per fare questo cosa devo fare ? cioè se al link home.php eve corrisponde ?sez=home scusate ancora , cmq diciamo che a una stringa deve corrisponde un link^^
    Attento home.php se hai impostato che la pagina indice sia quella.

  11. #11
    Guest

    Predefinito

    no intendo home come pagina del frame iniziale^^, cmq non so come fare quello che ti ho detto prima, cioè come fare corrisponde a quella stringa la pagina home.php, ovvero sarebbero dei casi (case)

    -

    va beh lasciamo così e uso gli iframe con i frame così la pagina rimane l'index e tutto gira li grazie a tutti e due per le risposte^^
    Ultima modifica di darkwolf : 20-12-2010 alle ore 23.06.20

  12. #12
    L'avatar di darkwolf
    darkwolf non è connesso Salvatore Noschese
    Data registrazione
    18-04-2007
    Residenza
    Reggiolo (RE)
    Messaggi
    6,558

    Predefinito

    Crea un file "index.php" e all'interno mettici:
    Codice PHP:
    <?php
    if (isset($_GET['pagina1'])) { // se la variabile è pagina1
    echo "contenuto della pagina 1"; // puoi anche usare l'include per includere un file specifico contenente il codice
    }
    else if (isset(
    $_GET['pagina2'])) { // se la variabile è pagina2
    echo "contenuto della pagina 2";
    }
    else {
    // altrimenti
    echo "pagina iniziale";
    }
    ?>
    Quindi, richiamando index.php avrai: "pagina iniziale";
    richiamando index.php?pagina1 avrai: "contenuto della pagina 1";
    ecc ecc...

    Puoi anche usare gli switch:
    Codice PHP:
    <?php
    switch ($_GET['pagina'])
    {
    case
    '':
    ?>
    HomePage
    <?php
    break;
    case
    '1':
    ?>
    Codice pagina 1
    <?php
    break;
    case
    '2':
    ?>
    Codice pagina 2
    <?php
    break;
    }
    ?>
    index.php?pagina=1

    È un esempio molto basilare ma dovrebbe rispondere al tuo quesito.
    Ultima modifica di darkwolf : 20-12-2010 alle ore 23.24.09

  13. #13
    Guest

    Predefinito

    mi spieghi meglio il fatto dei case? cmq il risultato che mi serve a me deve essere tipo quello del sito linkato sopra,
    cioè io proprio il php non lo ancora iniziato quindi se riesci a fornimi tipo il codice da fare solo cppia incolla e modificare le cose della pagina mi fai un favore poi me lo studio io bene, cmq non ho anche capito dove devo inserire il contenuto delle pagine oppure se devo fare con la funzione fopne("link", "r") , basta anche un esmepio si basiliare anche con solo due pagine e il default ma completo xk ho provato a metterlo dentro una pagina .php il codice che mi hai fatto ma non va e non so se dipende da fatto che non passo lavori.

    Per conclure diciamo che mi dovresti fare un scheletro abbondante del codice se puoi^^ grazie mille se puoi
    Ultima modifica di lotz : 20-12-2010 alle ore 23.34.27 Motivo: dimenticanza

  14. #14
    L'avatar di darkwolf
    darkwolf non è connesso Salvatore Noschese
    Data registrazione
    18-04-2007
    Residenza
    Reggiolo (RE)
    Messaggi
    6,558

    Predefinito

    Crea un index.php e mettici:
    Codice PHP:
    <?php
    switch ($_GET['menu'])
    {
    case
    '':
    ?>
    HomePage
    <?php
    break;
    case
    'registrazione':
    ?>
    Qui il codice della pagina registrazione
    <?php
    break;
    case
    'staff':
    ?>
    visualizza staff del sito
    <?php
    break;
    }
    ?>
    Puoi estendere i "case" a tuo piacimento ed assegnarli il valore che preferisci.
    La tua home sarà semplicemente index.php; per vedere lo staff farai "index.php?menu=staff" e via di seguito

  15. #15
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,685

    Predefinito

    Solo una piccolissima precisazione: aggiungici anche un avviso di errore in caso il parametro non sia corretto e il controllo che esista la variabile get (altrimenti da un waring)...

    Codice PHP:
    <?php
    if(isset($_GET['menu']))
    switch (
    $_GET['menu'])
    {
    case
    '':
    ?>
    HomePage
    <?php
    break;
    case
    'registrazione':
    ?>
    Qui il codice della pagina registrazione
    <?php
    break;
    case
    'staff':
    ?>
    visualizza staff del sito
    <?php
    break;
    default:
    ?>
    Pagina errata.
    <?php
    break;
    }
    ?>
    Quindi invece di "HomePage", "visualizza staff del sito" etc metti il sorgente della pagina (html, css, js...)...

    Ciao!
    Ultima modifica di alemoppo : 20-12-2010 alle ore 23.50.15

  16. #16
    Guest

    Predefinito

    il problema e che non ho capito come fare corrisponde a menu=staff il link del login di Cn ad esempio xD, e poi con questo codice che mi dai praticamente è una home dinamica? tipo clicco su registrazione e praticamente il link r(delbrowers rimane fisso o cambia?) porta alla stessa pagina ma cambia la seconda colonna se faccio a tabella? cmq il mio problema principale e che il php lo inizio a febbraio a scuola e quindi sto cercando di farmi spiegare al meglio ste cose che mi piacciono.

  17. #17
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,685

    Predefinito

    In realtà il PHP è talmente facile che si impara benissimo da soli.. poi se conosci un qualsiasi altro linguaggio di programmazione, hai la strada spianata :-D

    Comunque, sì, è una home dinamica... Prova ad esempio a visitare la pagina in questo modo:

    lotz.altervista.org/pagina.php?pagina=staff
    lotz.altervista.org/pagina.php?pagina=registrazione

    etc..

    nota "pagina.php" è il nome del file.. che puoi anche cambiare.... "index.php" se vuoi che sia la tua index

    Ciao!
    Ultima modifica di alemoppo : 20-12-2010 alle ore 23.51.45

  18. #18
    Guest

    Predefinito

    io conosco abbastanza bene il C cmq in parole povere questo codice php lo devo mettere sotto al menù che faccio che a seconda del valore della variabile che assume tipo una stringa che a seconda se è staff ecc mi fa partire nella seconda colonna la pagina corrispondente e via cosi?, cmq ultima cosa poi se riesco riesco altrimenti faccio con i frame come faccio a digli che se l'utente clicca sulla voce staff la variabile del case deve assumere il valore staff?

  19. #19
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,685

    Predefinito

    Ah bene.. anche io consocevo C quando ho imparato PHP...

    In pratica, quella è una pagina a sè... e la l'array $_GET assume il valore passato nell'url. Ad esempio:

    sito.altervista.org/pagina.php?parametro=valore&parametro1=valore1&par ametro2=valore2

    (nota "&" serve per separare i vari "parametri")

    E all'interno dello script in pagina.php nelle posizioni dell'array "parametro", "parametro1" e "parametro2" hai rispettivamente "valore", "valore1" e "valore2". Cioè:

    $_GET['parametro'] == 'valore'

    $_GET['parametro1'] == 'valore1'

    ecc...

    Nel tuo caso, serve soltanto un indice dell'array; è stato scelto "pagina". Quindi, alla posizione "pagina" dell'array avrai il contenuto passato dall'url... il resto è uguale a C (if o switch)...

    Ciao!
    Ultima modifica di alemoppo : 21-12-2010 alle ore 00.07.34

  20. #20
    Guest

    Predefinito

    ok ciao, ora ci provo se non ci riesco aspetto xD

  21. #21
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,685

    Predefinito

    se non riesci chiedi xD

    Ciao!

  22. #22
    Guest

    Predefinito

    altra domanda devo fare anche un file confing? cioè in questo file devo mettere i case e poi li inserisco con un include nella pagina pagina.php?

    non ci sto capendo nnt, per piacere riesci a fare un esempio leggermente più ricco cioè con la scelta di due cose dal menù e dai valori che assumono far partire il link alla pagina corrispondente dopo questo sono apposto xD.

    Detto in parole povere clicco su staff e mi deve avviare la pagina staff che poi a sua volta ha anch'essa il php del menù oppure se clicco su gallery la stessa cosa, ovvimanete con una home.

    Forse sto chiedendo troppo ma mi sto confondendo le idee così xD, praticamente la mia pagina .php è la mia home e a seconda del link che clicco mi deve partire il caricamente della pagina con il nome fatto a ?menu=staff. Ale poi tidico dove abito e mi vieni a uccidere xD

  23. #23
    L'avatar di darkwolf
    darkwolf non è connesso Salvatore Noschese
    Data registrazione
    18-04-2007
    Residenza
    Reggiolo (RE)
    Messaggi
    6,558

    Predefinito

    Hai il php e l'html, a css e struttura devi pensarci tu.

    struttura.php:

    Codice PHP:
    <?php
    error_reporting
    (E_ALL);

    // Se la var è vuota o non settata mostro la homepage
    if(empty($_GET['menu']) || !isset($_GET['menu'])) {

    $corpo = 'corpo homepage';
    $titolo = 'titolo homepage';
    $keywords = 'keyword varie per la home';
    $description = 'descrizione della pagina iniziale';

    }
    else {
    // Altrimenti:
    switch ($_GET['menu'])
    {
    case
    'registrazione':
    $corpo = 'corpo registrazione';
    $titolo = 'titolo registrazione';
    $keywords = 'keyword varie per la pagina registrazione';
    $description = 'descrizione della pagina registrazione';

    break;
    case
    'staff':
    $corpo = 'corpo staff';
    $titolo = 'titolo staff';
    $keywords = 'keyword varie per la pagina staff';
    $description = 'descrizione della pagina staff';

    break;
    default:
    die(
    'Not Found, torna all\'homepage: <a href="./">HomePage</a>');

    break;
    }
    }
    ?>
    index.php:

    Codice PHP:
    <?php require('struttura.php'); ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="it-IT">
    <head>
    <meta name="keywords" content="<?php echo $keywords; ?>" />
    <meta name="description" content="<?php echo $description; ?>" />
    <title><?php echo $titolo; ?></title>
    <link rel="stylesheet" type="text/css" href="style.css" />
    </head>

    <body>
    <div id="menu">

    <p>HomePage (directory): <a href="./" title="Homepage">Homepage</a></p>

    <p>Link classici (senza Url-Rewrite):
    <a href="index.php?menu=registrazione" title="registrazione">registrazione</a> |
    <a href="index.php?menu=staff" title="staff">staff</a></p>

    <p>Con Url-Rewrite:
    <a href="registrazione.html" title="registrazione">registrazione</a> |
    <a href="staff.html" title="staff">staff</a></p>

    </div>

    <div id="corpo">
    <h3><?php echo $corpo; ?></h3>
    </div>

    <p style="padding-top: 20px;">
    Sorgente: <a href="http://forum.it.altervista.org/php-mysql-e-apache-htaccess/121760-creare-link-con-nome-x.html#post776424">http://forum.it.altervista.org/php-mysql-e-apache-htaccess/121760-creare-link-con-nome-x.html#post776424</a>
    </p>

    </body>

    </html>
    Eventuale htaccess:
    Codice PHP:
    RewriteRule ^(.+)\.html$ index.php?menu=$1 [L,QSA]
    Demo: http://www.darkwolf.it/_script/struttura/
    Ultima modifica di darkwolf : 02-03-2016 alle ore 17.16.43 Motivo: Ripulito + htaccess + aggiornamento.

  24. #24
    Guest

    Predefinito

    ok grazie^^ ora provo e vi dico cmq devo fare due file uno struttura e l'altro index provo così^^ grz ancora

  25. #25
    L'avatar di darkwolf
    darkwolf non è connesso Salvatore Noschese
    Data registrazione
    18-04-2007
    Residenza
    Reggiolo (RE)
    Messaggi
    6,558

    Predefinito

    Lo ho separato in due file giusto per renderlo più pulito e comprensibile ma può andare benissimo anche in un unico file.
    PS: Ho ritoccato lo script in modo che si trovi da solo il file css (style.css nello stello livello di index.php e struttura.php).

  26. #26
    Guest

    Predefinito

    ok, cmq non riesco a metterlo dentro ad una tabella html -_-' devo perforza usare una tabella div?
    http://lotz.altervista.org/pagina.php ecco me viene, risolto ^^ allargo il tutto
    Ultima modifica di lotz : 21-12-2010 alle ore 17.24.08 Motivo: risolto

Regole di scrittura

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