Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    69

    gestire pagine con nomi uguali

    salve mi rivolgo a voi per questo problemino..
    ho creato un form php che prende dei dati e li posiziona in una pagina,
    (compilo i campi e inserisce i dati in posizioni specifiche in una pagina che genera)
    ora fra questi campi c'è il nikname, tutto funziona correttamente, il problema
    è che per scelta il nikname scelto viene utilizzato come nome della pagina quindi avremo:

    www.dominio/cartella/paginanikname.html
    quello che dovrei fare è che quando qualcuno inserisce il nikname venga fatta una sorta di verifica e se il nikname esiste già non permetta di creare la pagina, qualcuno ha idea di come fare?..


    grazie anticipatamente

  2. #2
    Utente di HTML.it L'avatar di Fractals87
    Registrato dal
    Apr 2008
    Messaggi
    1,202
    Mettiamo 2 utenti :
    utente1 e utente2

    utente1 inserisce nickname : pippo

    genere pagina di nome paginapippo.html

    utente2 inserisce anche lui nickname : pippo

    Tu prima che generi la pagina utilizzi la seguente funzione
    http://php.net/manual/en/function.file-exists.php
    e fai :

    if (file_exists("pagina".$_POST['nickname'].".html")) {
    echo "errore scegli altro nickname"
    } else {
    //procedo con la generazione della pagina
    }

    Ps non chiedo il perchè di questa soluzione, ma suppongo tu non stia utilizzando i db.
    Che mestiere difficile.....essere da soli ancora di più

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    69
    esatto no stò utilizzando nessun database,
    grazie mille ora mi butto a provare!

  4. #4
    Se posso aggiungere a quella funzione dovresti mettere oltre a: "se la cartella già esiste" anche un controllo sull'username. Possono capitare errori su username che non hanno cartelle, in questo modo ti ritroveresti con 2 username uguali e una sola cartella per entrambi, visto che poi il server utilizzerebbe in automatico il collegamento associandolo all'username.
    Esempio: Se hai fatto delle prove con dei nomi durante la creazione del form, ti ritroverai con dei nomi già esistenti che non hanno ancora alcuna cartella dedicata, quindi io metterei un doppio controllo. Però visto che non usi un database non sò come farti l'esempio. Utilizzi un file di blocco note come db?

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    69
    diciamo che è una gestione un pò strana, più che una pagina utente viene generata una pagina "Statica" in pratica quello che ho cercato di fare è 1 utente una pagina,

  6. #6
    Non è una pratica molto diffusa, anzi non lo è per niente. Come mai hai deciso di creare una pagina per ogni utente?
    Sono disponibile per realizzare lavori su commissione.

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    69
    perchè la pagina creata dall'utente dovrà essere visualizzata da altri come una normale pagina html fatta a "mano"

  8. #8
    Cosa intendi per 'fatta a mano'?
    Sono disponibile per realizzare lavori su commissione.

  9. #9
    Che tipo di sito è? Perchè ti serve una pagina per ogni utente e non una sola ceh estragga i dati a seconda dell'utente selezionato?

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    69
    sinceramente è stato iniziato così ed ora lo sto finendo,
    comunque si genera una pagina ad ogni utente una piccola pagina html con poche cose all'interno..
    comunque ho provato con le istruzioni fornite da
    Fractals87, lui diceva di fare una cosa del genere:

    if (file_exists("pagina".$_POST['nickname'].".html")) {
    echo "errore scegli altro nickname"
    } else {
    //procedo con la generazione della pagina
    }

    ma con un pò di prove e di studio.. ho scoperto questo,

    if (file_exists("pagina".$_GET['text1'].".html")) {

    die();
    }

    in teoria se lo inserisco all'inizio della pagina lui fa la verifica al campo di testo1 (text1)
    e se esiste un file con lo stesso nome di : pagina(il testo inserito).html esegue la funzione die(); e chiude li il codice quando faccio crea..
    in teoria dovrebbe essere così ma non funziona molto, solo se il campo di testo resta vuoto la pagina non viene creata, se si riempie il problema continua e viene sovrascritta la vecchia pagina,qualcuno ha un idea?...

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.