Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Aggiunta variabili all'URL

    Ciao, ragazzi.

    Ho una pagina dinamica del tipo:

    ele_prod.php?cid=4

    Vorrei però passare un'altra variabile all'htaccess, tipo $nome, contenuta nel database, in modo che la pagina in questione, riscritta, diventi:

    $nome-$CID.html

    E' possibile passare questa variabile, possibilmente lasciando invariato l'URL in php (altrimenti dovrei fare un doppio Redirect, x i motori di ricerca)?

    Grazie
    Questo è il mio sogno...

    http://www.ai-machines.com

    .... non svegliatemi !!!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    C'ho provato... ma non t'ho capito

  3. #3
    grazie... scusa.... effettivamente è un pò difficile spiegarsi.

    Allora....

    devo fare il mod_rewrite con htaccess (su Apache) per una pagina dinamica, in PHP, che è:

    ../ele_prod.php?cid=45

    Quando la riscrivo, però, vorrei inserire nel nuovo URL una stringa di testo corrispondente ad una variabile, correlata all'ID della pagina. Mi spiego:

    alla pagina ele_prod.php?cid=45 corrisponde l'hard disk, la nuova URL deve essere:

    hard-disk-45 .html

    alla pagina ele_prod.php?cid=26 corrisponde la mainboard, la nuova URL deve essere:

    mainboard-26.html

    Queste stringhe correlate all'ID le ho sul database. In pratica, sul database, ad un id=45 ho una variabile $stringa = "hard-disk".

    il mio problema è che, visto che nell'URL originaria non ho questa variabile, non posso usarla come "$2" sull'htaccess.

    Come faccio, quindi, a "passarla"?

    Grazie.
    Questo è il mio sogno...

    http://www.ai-machines.com

    .... non svegliatemi !!!!

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    E perchè sull'url (dato che hai dovuto accedere al db per prendere l'id) non metti direttamente la descrizione?

  5. #5
    Perchè, a meno che non stia prendendo un abbaglio, se modifico l'url originaria in PHP, per non trovarmi le pagine duplicate (e penalizzate dai motori di ricerca) dovrei effettuare 2 redirects;
    uno dalla pagina originale a quella con l'aggiunta della descrizione;
    un altro dall'url con la descrizione all'url finale in HTML.

    E' corretto?
    Questo è il mio sogno...

    http://www.ai-machines.com

    .... non svegliatemi !!!!

  6. #6
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    quello di cui parli è l'url rewrite, si fa scrivendo delle apposite espressioni regolari che trasformano l'url.

    Ci sono diversi articoli e thread sul forum sull'argomento, prova a fare una ricerca...


    ciao

  7. #7
    Ciao, grazie x la tua risposta.

    Non posso farlo solo con le espressioni regolari, però, perchè nella mia URL non compare un parametro che contiene il testo da inserire sull'url definitivo
    Questo è il mio sogno...

    http://www.ai-machines.com

    .... non svegliatemi !!!!

  8. #8
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    comunque se il problema è il motore di ricerca, credo che valgano di più altri accorgimenti, tipo impostare il titolo della pagina.

    Cosi al volo non mi viene in mente nessun metodo per passare quelle informazioni nell'url se non estraendole dal db, ma non credo che serva a molto.

    ciao

  9. #9
    guarda, il problema non è avere l'informazione, ma "passarla" dalla pagina PHP all'htaccess, che la deve utilizzare sulla nuova URL.

    Io la variabile con il testo da inserire sull'url già ce l'ho, sul DB.

    Ma come faccio a "spiegare" all'htaccess che deve prendere la variabile $variabile e utilizzarla come $2 (secondo parametro), assieme a $1(ID della pagina) sulla nuova URL?
    Questo è il mio sogno...

    http://www.ai-machines.com

    .... non svegliatemi !!!!

  10. #10
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    allora avevo capito, le espressioni regolari sono potentissime, ad esempio questa (molto semplice) prende le 3 variabili nell'url

    codice:
    RewriteRule ^(linux)/([^/]+)/([^/]+).html index.php?cmd=$1&cmd2=$2&id=$3
    questa fa in modo che una pagina chiamata cosi:

    sito.it/linux/articoli/1.html sia letta dal php come:

    index.php?cmd1=linux&cmd2=articoli&cmd3=1

    ciao

    p.s. tu forse fai confusione, non è il php che la passa all'htaccess, ma il contrario, htaccess interviene prima del php ed è lui a dire al php come interpretare l'url.

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.