Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 24
  1. #11
    Utente di HTML.it L'avatar di kakashi
    Registrato dal
    Feb 2005
    Messaggi
    357
    Codice PHP:
    $file fopen($titolo.".html"'w'); 

  2. #12
    Ho modificato il messaggio al tuo stesso tempo

    Adesso tutto funziona. Ho notato però una cosa, cioè, le variabili nella pagina creata sono inserite tra le due parentesi {nome} - {titolo} ... Non è possibile togliere le parentesi lasciando solo la variabile ?

    Grazie.

  3. #13
    Utente di HTML.it L'avatar di kakashi
    Registrato dal
    Feb 2005
    Messaggi
    357
    Fai come preferisci. Il codice che ti è stato postato e un sostitutore

    Codice PHP:
    $page preg_replace("{titolo}"$titolo$tpl);   
    Ovverocerca {titolo} ( o qualsiasi altra cosa e la sostituisci con il testo contenuto in una variabile 

  4. #14
    Uhm, sicuramente sbaglio qualcosa (di nuovo), se modifico la stringa in questo modo:

    codice:
    $page = preg_replace("titolo", $titolo, $tpl);
    $page = preg_replace("nome", $titolo, $tpl);
    e nel template.html modifico in:

    codice:
    <h2>titolo - inserita da: nome</h2>
    Cioè vado a levare le parentesi {} di segnaposto, i 2 valori non vengono sostituiti e viene generata una pagina vuota. Mentre se lascio {nome} / {titolo}, viene sostiuito il valore ma non vengono tolte le parentesi.


  5. #15
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    Codice PHP:
    $page preg_replace("nome"$nome$page); 
    al posto di

    Codice PHP:
    $page preg_replace("nome"$titolo$tpl); 
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

  6. #16
    Probabilmente avevo sbagliato nel copiare il codice dall'editor. Però, fatte le modifiche come consigliato, non funziona ancora. Cioè, tutto perfetto, tranne quelle parentesi che restano.

  7. #17
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    cosa vuol dire le parentesi che restano? le parentesi restano percheè nel template avrai messo {titolo} mentre in uno dei recenti post hai modificato il replace andando a rimpiazzare la stringa "titolo" invece che la stringa "{titolo}". è ovvio che le parentesi restano.
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

  8. #18
    Mi spiego. Se metto:

    codice:
    $page = preg_replace("{titolo}", $titolo, $tpl);
    e nel template.html inserisco:

    codice:
    <h2>{titolo}</h2>
    la pagina $titolo.html viene creata correttamente ma il risultato è <h2>{Variante}</h2>, cioè la variante viene inserita, ma le parentesi restano.

    Invece, se metto:

    codice:
    $page = preg_replace("titolo", $titolo, $tpl);
    e nel template.html inserisco:

    codice:
    <h2>titolo</h2>
    la pagina creata $titolo.html risulta priva di codice, totalmente bianca.

    Spero di essere stato più chiaro.



    Grazie.

  9. #19
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    Il fatto che le parentesi "restano" potrebbe essere perchè non hai usato la sintassi corretta delle espriessioni regolari. Se guardi il mio primo post vedrai che c'erano anche delle parentesi quadre, che poi tu hai tolto. Rimettile e vedrai che funziona.

    Io ti consiglio di lasciare così, cioè con i segnaposto fatti con le graffe. Non le ho messe a caso ma perchè così diminuisci la possibilità di errore: immagina di usare un segnaposto fatto così "titolo" invece che così "{titolo}". Cosa succede? che oltre a rimpiazzare il segnaposto rimpiazzi anche tutte le altre occorrenze della parola titolo, magari vai a beccare un testo che contiene la parola titolo, o un pezzo di codice javascript dove scrivi "var titolo = 1"... invece usando le parentesi graffe DISTINGUI i segnaposto dalle parole normali.

    Poi se prosegui per la tua strada e vuoi togliere le graffe, posta l'intero codice che non funziona. c'è sicuramente qualche errore sciocco o di copia-incolla, perchè la logica è identica e deve funzionare.
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

  10. #20
    Grazie per la spiegazione.

    Effettivamente, inserendo le parentesi quadre in questo modo:

    codice:
    $page = preg_replace("[{nome}]", $nome, $page);
    $page = preg_replace("[{titolo}]", $titolo, $tpl);
    nella pagina $titolo.html, la variante {titolo} viene sostituita con la variabile e senza parentesi graffe.

    Mentre la variante {nome} non viene sostituita, nella pagina generata resta: {nome}

    Ecchecc... Ok, a me va benissimo tenere pure le parentesi graffe nella pagina creata ma ... provo profondo odio nelle parentesi graffa, da ieri.

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.