Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    22

    fwrite ed include... un consiglio

    salve ragazzi,
    grazie alle guide del sito ed al vostro aiuto ho creato la mia prima applicazione con php e mysql.
    la mia app. inserisce dei dati nel db e, sfruttando alcuni di questi dati, crea una directory ed un file in formato php, ad esempio ARTICOLO.PHP . Ora ho il problema di scrivere in questo file ciò che desidero compaia a video quando un utente si collega al sito...
    naturalmente quello che vorrei comparisse a video poterbbe cambiare nel corso del tempo e magari, più in là, vorrei poter inserire una colonna in una tabella oppure dei link, ecc.

    avevo pensato a questa soluzione:

    1) mi creo un file master.php che potrò andare a modificare in ogni momento senza dover modificare le altre pagine create della mia app. , tipo ARTICOLO.PHP

    2) in questo file master.php mi vado ad includere altri file che mi serviranno, tipo il file di configurazione del DB , faccio partire una sessione, disegno una tabella tipo che comparirà a video, inserisco i meta tag, ecc.

    3) uso fopen() e fwrite() per scrivere nel file ARTICOLO.PHP e vi includo solo il file master.php

    vi sembra intelligente come soluzione? o un pò "ortodossa"??
    mi sapreste consigliare qualche soluzione?
    le modifiche che farò al file master.php compariranno anche nelle pagine create precedentemente ??

    non so se sono stato sufficientemente chiaro...
    ciao

  2. #2
    Quindi intenti far scrivere il contenuto testuale del file php prelevando il testo da un file txt?

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    111
    a me pare molto poco ortodossa, cioè strana!

    perchè non usi una comune pagina dinamica? cioè un file php che produce diversi codici html a seconda delle esigenze.

    tipo

    Codice PHP:
    <?php

    //qui interroghi il database e fai tutte le tue cose. supponiamo che generi 6 variabili e le vuoi mostrare a schermo

    echo "
    <html>
      <head>
        <title>SITO XYZ</title>
        <link a css e js />
      </head>
      <body>
        <table>
          <tr><td>"
    .$_var_1."</td><td>".$_var_2."</td></tr>";
          if(
    condizione) {echo"
          <tr><td>"
    .$_var_3."</td><td>".$_var_4."</td></tr>";}
          else {echo
    "
          <tr><td>"
    .$_var_5."</td><td>".$_var_6."</td></tr>";}
          echo
    "
        </table>
      </body>"
    ;
    ?>
    spero d'aver centrato il problema...

  4. #4
    Infatti non si capisce se vuoi modificare un menu o un contenuto... prelevandolo da file..
    In ogni caso come suggerito non credo sia una buona idea..

    Sia per il menu, sia per un contenuto testuale, io lo metterei tutto da database, e quando lo modifichi in automatico lui prende il contenuto che vuoi come fa un cms praticamente.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    111
    Originariamente inviato da marco.carrieri
    Infatti non si capisce se vuoi modificare un menu o un contenuto...
    e che differenza farebbe?

    un cms essenzialmente funziona come ho indicato io. non che ci siano tante alternative... ovviamente ci sono molti modi diversi per generare un contenuto. ad esempio per una tabella può essere conveniente utilizzare un processo iterativo.

    mi pare di mostrare la scoperta dell'acqua calda. ma stiamo parlando di contenuti dinamici, ciò per cui il php è nato, o no?

  6. #6
    Beh ma io ho solo mostrato un altro modo.
    Tu gestisci i contenuti tramite degli if io invece dico di estrarli dal database.
    Tutti e due vanno bene credo per quello che l'utente chiede.
    Stara all'utente decidere.

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    111
    eh.. non per far polemica, quanto per chiarire, direi che è difficile scrivere uno script php senza if, o generare un contenuto dinamico senza ricorrere a un database...
    io ho solo fatto un esempio che chiarisse come generare del codice html con php. è sott'inteso che i contenuti vadano pescati da un database. comunque l'ho scritto nella parte commentata.

  8. #8
    Ma infatti siamo qua per aiutarci a vicenda.
    Non era mia intenzione sminuire la tua scelta.
    Solo indicare un altra strada.

    E' logico che se i cambiamenti sono pochi e rari la mia è mooooooooolto peggiore come scelta.

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    22
    ciao v1, credo che sceglierò la soluzione che hai proposto all'inizio ma la mia domanda è questa:

    una volta inserito il record nel DB dovrò creare un link al record stesso per fare in modo che i visitatori aprano la pagina. ho visto che alcuni siti usano il get con una cosa del tipo

    www.miosito.it/?action=read&idarticolo=10

    mi sa che domani do una lettura a qualche guida e vedo di risolvere...

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    111
    certo.. supponiamo che tu abbia un homepage che consiste in una lista di articoli. a ognuna delle voci della lista deve corrispondere un link. non necessariamente i link devono essere diretti a pagine html statiche, ma puoi indirizzarli tutti verso la stessa pagina php, ad esempio articolo.php, specificando però diversi parametri nell'indirizzo. anzitutto un codice univoco per ciascun articolo.

    nell'homepage:
    codice HTML:
    [url="articolo.php?id=4"]articolo 4[/url]
    nella pagina articolo:
    Codice PHP:
    <?php

    $query 
    "SELECT * FROM database WHERE id_articolo=".$_GET['id']; //questo è un approccio semplicistico che va migliorato inserendo delle funzioni per sistemare l'input. ad esempio aggiungendo apici dove necessario, commentando alcuni caratteri speciali, convertendo nello stesso formato del database (consiglio utf8)

    // devi connetterti al database con le apposite funzioni prima di eseguire una query

    $db_conn = @mysql_connect($host,$userid,$password);
    mysql_select_db($db_nome,$db_conn);

    //si esegue la query e si elencano i risultati

    $qr mysql_query($query,$db_conn) or die(mysql_error());
    $risultati =  mysql_fetch_assoc($qr);

    //ora nella variabile $risultati ci sono le cose pescate dal database, che dovrebbe essere tutto ciò che ti serve a costruire il tuo articolo numero 4
    //supponiamo che il tuo database sia fatto di 3 colonne: titolo, corpo e autore. li puoi estrarre in questo modo, dato che $risultati è un array.

    $titolo $risultati['titolo'];
    $corpo $risultati['corpo'];
    $autore $risultati['autore'];

    //e li puoi impiegare come più ti conviene nella costruzione della tua pagina.

    ?>
    ora credo che ti sia fatto un'idea su che percorso seguire. sappi che seguendo le guide su questo sito o cercando con google è possibile trovare tutto l'aiuto che ti serve per superare i problemi che ti si presenteranno.

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.