Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    47

    Uso di variabili php per mostrare dinamicamente elementi html

    Ciao a tutti, mi sono incartato su un problema mentre devo fare modifiche ad un sito di un'amica.
    Ho fatto in passato corsi di html e php ma purtroppo sono alle prime armi e certe cose sicuramente banali non mi riescono.
    Ho creato un database per mappare i libri presenti nel catalogo del sito.
    Selezionando l'autore desiderato vorrei mostrare sulla pagina solo i libri dell'autore selezionato.
    Ora mi trovo nella situazione di avere nella variabile php i rsultati della query per autore.
    Avevo pensato di fare la query "al negativo", ovverosia avere tutti gli id della tabella dei libri che NON devo mostrare.
    Questo perché, all'apertura della pagina, tutti i libri sono mostrati e dopo, a seconda, dell'autore selezionato, non saranno più visibili i libri degli altri autori.
    So che con "mysql_fetch_array" ho una variabile su cui posso ciclare i risultati della query, ma come la utilizzo?
    Ho provato a chiamare una funzione javascript ma no va bene, perché i comandi javascript provano ad essere eseguiti prima che vengano processate le variabili php (ho osservato questo).
    Come faccio a porre "display=none" agli elementi che hanno id uguali a quelli della variabile php?
    Mi sono incartato....

    Ciao a tutti e grazie,
    Paride

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2016
    Messaggi
    783
    Sulla pagina dell'autore X fai una nuova query al database e richiedi solo i libri dell'autore X, poi li visualizzi come vuoi.

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    47
    Scusami ma non sono sicuro di aver capito.
    Intendi che dovrei fare un pagina html per ogni autore?
    Il mio intento è quello di mantenere una sola pagina, come ho ora, e mostrare le tr della tabella corrispondenti all'autore scelto, laddove porrei display=none sulle altre

  4. #4
    Utente di HTML.it L'avatar di vic53
    Registrato dal
    Oct 2010
    residenza
    Fonte Nuova (Roma)
    Messaggi
    590
    No devi fare una pagina dinamica che utilizza il codice autore nella query SQL
    Vic53

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    47
    Non ci ho capito nulla.
    Una domanda: non esiste una istruzione php che va a settare un attributo di un elemento html?

  6. #6
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Scusa, ma non ti conviene modificare al volo la query senza sbatterti con il "nascondere" gli altri libri?

    Tu dovresti avere una cosa del genere:
    Codice PHP:
    // Ometto connessione al databese e controlli vari
    $query mysql_query("SELECT * FROM libri");
    while(
    $row mysql_fetch_assoc($query)){
       ...

    Adesso basta che passi l'autore in qualche modo (es un form) e ti basta fare:
    Codice PHP:
    $where '';
    if(isset(
    $_POST['autore'])){
        
    // Ipotizzo autore come campo di testo. 
        
    $autore mysql_real_escape_string($_POST['autore']);
        
    $where "WHERE autore = '$autore'";
    }


    $query mysql_query("SELECT * FROM libri $where);
    //Questo non ti cambia
    while($row mysql_fetch_assoc($query)){
       ...


  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    47
    Ho già una $risultato_autore_selezionato ch contiene le righe della tabella dei libri che sono stati scritti da un determinato autore.
    Il mio problema è come ciclare su tale variabile (while ($row = mysql_fetch_array($risultato_autore_selezionato)), come hai scritto te).
    Devo ciclare e, ad ogni giro del ciclo, settare display="none" ai tr dell'html che non devono essere visualizzati

  8. #8
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,361
    Quote Originariamente inviata da parider Visualizza il messaggio
    Ho già una $risultato_autore_selezionato ch contiene le righe della tabella dei libri che sono stati scritti da un determinato autore.
    Il mio problema è come ciclare su tale variabile (while ($row = mysql_fetch_array($risultato_autore_selezionato)), come hai scritto te).
    Devo ciclare e, ad ogni giro del ciclo, settare display="none" ai tr dell'html che non devono essere visualizzati
    Se hai una query che ricava l'autore giusto non hai biogno di settare display='none' per gli autori che non devono essere visualizzati visto che non sono stati selezionati !
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  9. #9
    Utente di HTML.it L'avatar di vic53
    Registrato dal
    Oct 2010
    residenza
    Fonte Nuova (Roma)
    Messaggi
    590
    una pagina dinamica o un form in cui gli dai in input l'autore ogni volta che serve e il sistema ti risponde facendo la nuova query...
    PHP poi gira sul server e quindi non puo modificare gli statement HTML...che sono visualizzati sul client ... come chiedi tu...
    Vic53

  10. #10
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    47
    Perdonatemi. Potrei avere un esempio parti co, altrimenti non capirò mai.
    Io ho appunto dei tr coi singoli libri e a seconda della variabile della query devo filtrare.
    Grazie

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 © 2024 vBulletin Solutions, Inc. All rights reserved.