Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Domanda su metodo GET

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2015
    Messaggi
    9

    Domanda su metodo GET

    Salve,
    spiego meglio quanto detto nel titolo.
    Sto creando un forum dove ogni utente ha un profilo (come anche su sciax) c'è solo un problema.. Io quando per esempio si clicca sul profile dell'utente ho fatto in modo di reperirne il nome e poi recarmi al: localhost/viewProfile.php?pname= nome profile del tizio, (viewprofile è il file che si occupa di associare l'id e tutte le altre info dal nome e costruirne la pagina), la mia domanda è prettamente estetica, mi chiedo come posso fare apparire per esempio localhost/viewProfile/pname/ nome utente del tizio?
    Come è su sciax, youtube, facebook etc etc
    Grazie in anticipo.



  2. #2
    Dovresti usare il file .htaccess per definire una regola per gli url del tipo /viewprofile/username

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2015
    Messaggi
    9
    Quote Originariamente inviata da lucavizzi Visualizza il messaggio
    Dovresti usare il file .htaccess per definire una regola per gli url del tipo /viewprofile/username
    Puoi spiegare meglio? Devo vedere se la mod rewrite è attiva nel server?

    EDIT: Ho modificato l'htaccess cosi:
    codice:
    RewriteEngine On    
    RewriteRule ^viewProfile/profile/(.*)$  viewProfile.php?profile=$1    [NC,L]
    Ora quando provo a scrivere ^/viewProfile/profile/1 (1 è un id) non da errore come se scrivessi ^/viewProfile/profileee/1.
    Infatti nel primo caso mi rispedisce in quella pagina però senza dati (nome, e discussioni dell'utente) invece nel secondo caso manco riconosce la pagina. Ho provato a fare un echo del $_GET['profile'] e non restituisce assolutamente nulla, invece il var_dump restituisce una stringa da 0 caratteri..
    Cosa si può fare?
    Ultima modifica di Dr.Joek; 06-03-2016 a 00:45

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2015
    Messaggi
    9
    PROBLEMA RISOLTO:
    Bisogna aggiungere al .htaccess (local o generale) il seguente codice:
    codice:
    RewriteEngine On    
    RewriteRule ^profile/(.*)$  viewProfile.php?profile=$1    [NC,L]

    Il carattere ^ sta a indicare il dominio e quindi la cartella root, le parentesi invece indicano una variabile, in questo caso la variabile può ospitare tutti i tipi di carattere, e dopo la parentesi il segno del dollaro per indicare che la variabile è là. Dall'altra parte c'è invece la vera directory con il: $1 che indica la variabile 1 quindi: (.*). Aggiungo che bisogna attendere 2-3 secondi prima che il server "metabolizzi" il nuovo .htaccess.

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2015
    Messaggi
    29
    Quote Originariamente inviata da Dr.Joek Visualizza il messaggio
    PROBLEMA RISOLTO:
    Bisogna aggiungere al .htaccess (local o generale) il seguente codice:
    codice:
    RewriteEngine On    
    RewriteRule ^profile/(.*)$  viewProfile.php?profile=$1    [NC,L]

    Il carattere ^ sta a indicare il dominio e quindi la cartella root, le parentesi invece indicano una variabile, in questo caso la variabile può ospitare tutti i tipi di carattere, e dopo la parentesi il segno del dollaro per indicare che la variabile è là. Dall'altra parte c'è invece la vera directory con il: $1 che indica la variabile 1 quindi: (.*). Aggiungo che bisogna attendere 2-3 secondi prima che il server "metabolizzi" il nuovo .htaccess.
    Per non generare disinformazione, quella e' un'espressione regolare e il carattere ^ indica l'inizio della stringa, e $ la fine. E (.*) indica un matching pattern ogni carattere 0 o piu' volte, che nel tuo caso sarebbe piu' corretto come (.+) o ([a-z0-9-]+). Giusto perche' altrimenti domani ti matcha anche "viewProfile/utente/bla+-_---_/?etc"
    Ultima modifica di cisco87; 06-03-2016 a 01:50

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.