Visualizzazione risultati 1 fino 24 di 24

Discussione: Friendly url solo in una pagina

  1. #1
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Question Friendly url solo in una pagina

    Ciao.
    È un argomento discussissimo, OK, ma io vorrei fare i friend url solo in una pagina.
    Mi spiego: io mando gli utenti a Pagina.php?id=01 o questo si trasforma in Pagina/01. Possibilmente senza .php. Adesso: come faccio a recuperare il numero "01"?
    Poi il frend url dovrebbe esserci solo in quella pagina.
    Poi se un utente va su Pagina/01 ovviamente deve funzionare normalmente, cioè deve trovare il 01.
    Grazie.

  2. #2
    tiberistefano non è connesso Utente
    Data registrazione
    28-01-2011
    Messaggi
    125

    Predefinito

    Citazione Originalmente inviato da radiodelmomento Visualizza messaggio
    Ciao.
    È un argomento discussissimo, OK, ma io vorrei fare i friend url solo in una pagina.
    Mi spiego: io mando gli utenti a Pagina.php?id=01 o questo si trasforma in Pagina/01. Possibilmente senza .php. Adesso: come faccio a recuperare il numero "01"?
    Poi il frend url dovrebbe esserci solo in quella pagina.
    Poi se un utente va su Pagina/01 ovviamente deve funzionare normalmente, cioè deve trovare il 01.
    Grazie.
    E' il momento del profano (cioe' di me, anche se non sono proprio a 0 di php)!!!
    Le mie conoscenze sono abbastanza limitate, ma penso che per un programma php l'estensione sia indispensabile, in quanto il php e' un linguaggio interpretato e per essere riconosciuto dal server come interpretato, utilizza l'estensione .php
    Per quanto riguarda la tua domanda, se utilizzi la sintassi Pagina.php?id=01 non vedo grossi problemi, nel programma pagina.php controllerai il valore che hai passato alla variabile id (in questo caso 01) e poi farai con quello le tue considerazioni.
    Per fare questo e' sufficiente leggere la variabile id con questo comando:
    $valore = $_GET['id'];

    Nel tuo caso nella variabile $valore hai inserito il valore '01', poi cosa devi farci lo sai meglio tu di me...

  3. #3
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Ciao, mi servirebbe a fare delle pagine personali agli utenti.
    Cioè se un utente ha come id 01, anziché vedere Utente.php?id=01 vedrà Utente/01... è più formale e si ricorda meglio. Magari potrei creare una cartella "Utente" dove inserirò una pagina dinamica...
    Ditemi voi :-)
    Grazie.

  4. #4
    Guest

    Predefinito

    Non c'è bisogno delle cartelle. Basta che usi questo codice:
    Codice:
    RewriteRule ^Pagina/([0-9]+)$	pagina.php?file=$1 [QSA,L]
    In questo modo avrai il rewrite come vuoi tu, poi potrai comunque passare i valori della query string ed utilizzarli con $_GET.

    Esempio: Pagina.php?id=01&page=Bacheca&altro=query
    Sarà: Pagina/01?page=Bacheca&altro=query


  5. #5
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Grazie biccheddu, quindi poi i valori di $_GET li recupero normalmente?!?
    Altra domanda: se uno va direttamente su Pagina/01, $_GET funziona?!?
    Grazie mille.

  6. #6
    Guest

    Predefinito

    $_GET funziona e 01, nel codice che ti ho scritto (sbagliato un po'), avrà come key file, infatti ti conviene cambiarla.

    Codice:
    RewriteRule ^Pagina/([0-9]+)$	pagina.php?id=$1 [QSA,L]
    In questo caso avrà id e sarà un semplice valore che potrai prendere con $_GET.


  7. #7
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Sì, questo l'avrei cambiato secondo le mie esigenze.
    Il codice funziona anche se al posto dell'id (variabile) metto una stringa o dovrei cambiare ([0-9]+)?
    Grazie mille.

  8. #8
    Guest

    Predefinito

    Esatto. La RewriteRule sarà "vera" nel caso siano solo numeri, ma ovviamente puoi cambiarlo in base alle tue esigenze.

    Nello script, poi, ricorda di inserire le funzioni per evitare le XSS e le SQL Injection.


  9. #9
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    OK, ora l'ho provato in una cartella del mio sito protetta da password e non funziona... può essere che è perché appunto è protetta?

  10. #10
    Guest

    Predefinito

    C'è scritto:
    Codice:
    RewriteEngine On
    ?


  11. #11
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    No, ecco il mio file .htaccess:
    Codice:
    # av:Auth
    AuthType Basic
    AuthName reserved_area
    AuthUserFile "*************************"
    <Limit GET POST>
    require valid-user
    </Limit> 
    # Auth
    RewriteEngine On
    RewriteRule ^Utenti/([0-9]+)$	Utenti.php?id=$1 [QSA,L]
    RewriteEngine On l'ho messo adesso, ma non funziona comunque.
    E nelle opzioni semplici non spunta.
    Grazie.
    Ciao! :-)

  12. #12
    Guest

    Predefinito

    Le regole sono case sensitive. Sicuro che siano corrette maiuscole e minuscole?

    Se si, prova a commentare le righe precedenti della "limit".

    Altrimenti non saprei da cosa dipenda avendo queste informazioni.


  13. #13
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Dovrei rinominare questo indirizzo
    http://radiodelmomento.altervista.or...enti.php?id=12
    Quindi nel file .htaccess della cartella NUOVOSITO gli ho messo quelle stringhe, e l'indirizzo rimane sempre tale e quale. Provando anche a scrivere soltanto questo non funziona comunque.
    Codice:
    RewriteEngine On
    RewriteRule ^Utenti/([0-9]+)$	Utenti.php?id=$1 [QSA,L]
    Può essere che devo partire da /membri?
    Oppure devo inserire anche NUOVOSITO?
    Grazie biccheddu, ciao!

  14. #14
    Guest

    Predefinito

    Aspetta, leggendo "rimane tale e quale" mi fa pensare che tu vorrei un redirect automatico; se si, questo non è possibile farlo con .htaccess, ma dovrai essere tu a linkare direttamente la pagina.

    Se vai all'indirizzo radiodelmomento.altervista.org/NUOVOSITO/Utenti/12, visualizzi la pagina come se fosse quella linkata da te? Se si, il codice funziona.


  15. #15
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Scusami, pensavo che ci fosse il reindirizzamento automatico, ma il problema resta sempre...
    Vado su radiodelmomento.altervista.org/NUOVOSITO/Utenti/12 ma...
    radiodelmomento.altervista.org/not_found.php
    Vado su radiodelmomento.altervista.org/NUOVOSITO/Utenti.php?id=12 ed è perfetto.
    Why?
    Thanks.

  16. #16
    Guest

    Predefinito

    Prova:
    Codice:
    RewriteEngine On
    RewriteBase /NUOVOSITO/
    RewriteRule ^Utenti/([0-9]+)$	Utenti.php?id=$1 [QSA,L]

  17. #17
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    OK, adesso non mi da più errore 404... però c'è un problema.
    Intanto ti dico che ho messo il codice nella cartella NUOVOSITO.
    Poi il browser capisce che Utenti è una cartella, quindi tutti i link ai css sono errati... dovrei riscriverli calcolando che Utenti è una cartella?
    Ultima cosa (la più importante): non legge l'id.
    Cioè è come se 12 non fosse scritto.
    Grazie per la pazienza, ciao!

  18. #18
    Guest

    Predefinito

    Per il problema dei CSS si, ovviamente devi utilizzare dei link ai CSS parzialmente relativi, cioè devono puntare alla root dello script.

    Per il secondo, puoi postare la parte di codice PHP che utilizzi?


  19. #19
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Scusami, avevo scritto prima il primo codice e poi il secondo e con htpasswd non lo notavo.
    Grazie mille, tutto OK.
    Una cosa: per inserire stringhe alfanumeriche devo mettere [a-z/0-9]? Non mi convince...
    Grazie ancora, ciao!

  20. #20
    Guest

    Predefinito

    Senza lo slash; ti consiglio però, prima di scrivere qui sul forum, fai una ricerca in internet, poi qui posti i dubbi e le perplessità che non sei riuscito a toglierti da solo.


  21. #21
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Grazie, dovrebbe essere [0-9-a-z]?
    Ho cercato su internet trovando solo friendly url per tutto il sito.
    Gazie mille, ciao!

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

    Predefinito

    Citazione Originalmente inviato da radiodelmomento
    [a-z/0-9]
    Citazione Originalmente inviato da biccheddu
    Senza lo slash;
    hai provato senza lo slash? ovvero: [a-z0-9] ?

    Ciao!

  23. #23
    L'avatar di javascripter
    javascripter non è connesso Moderatore
    Data registrazione
    14-02-2010
    Messaggi
    1,114

    Predefinito

    Forse, se vuoi includere anche i caratteri maiuscoli oltre a quelli minuscoli, ti conviene usare direttamente \w ( che sta per [0-9A-Za-z] ).

    Altrimenti va benissimo ciò che ti è stato suggerito sopra ( [a-z0-9] ).

  24. #24
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    OK grazie funziona.
    Ho messo a-zA-Z0-9 (per ricordarmi a che serve ) e adesso dovrei inserire anche i caratteri speciali...
    Grazie

Regole di scrittura

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