Pagina 1 di 1
Visualizzare testo con funzione if
Inviato: 05/06/2013, 18:43
da brunino
Scusate ancora se disturbo

, ma mi manca l ultimo tassello per completare una custom page che sto realizzando.
Allora: una colonna (della tabella che controlla la mia custom page), puo' contenere solo o 1 o 0. Avrei bisogno che quando imposto l'1 nella custom page appaia un testo, se invece il dato e' impostato su 0, quel testo non si visualizzi.
Nella pagina php avevo pensato di inserire la semplice query
SELECT vedinascondi FROM PAGE_TABLE WHERE id=1
ma nella pagina html mi sono bloccato.
So che esiste il comando IF perche' l'ho visto in altri codici, ma non ho la minima idea di come utilizzarlo.
Grazie in anticipo

Re: Visualizzare testo con funzione if
Inviato: 05/06/2013, 20:34
da Micogian
Se è una Custom Page hai un file php che gestisce la connessione al database e un file HTML (template) che visualizza la pagina.
Devi intervenire sul PHP per ottenere una variabile da passare al template.
Interroghi la tabella per vedere se il valore "vedinascondi" è 1 o 0 e in base al risultato assegni il valore "true" o "false" alla variabile "$vedinascondi"
Poi passi questo valore alla variabile per il template (in maiuscolo)
Codice: Seleziona tutto
if($vedinascondi == '1')
{
$template->assign_var('VEDINASCONDI', 'true');
}else{
$template->assign_var('VEDINASCONDI', 'false');
}
A questo punto la variabile {VEDINASCONDI} e "true" o "false"
Nel template, sfrutti la condizione "IF" per visualizzare il testo se la variabile è "true"
Codice: Seleziona tutto
<!-- IF VEDINASCONDI -->
<p>visualizza il testo</p>
<!-- ENDIF -->
dai un'occhiata a questa Guida:
http://wiki.phpbbitalia.net/Interrogare_il_database
Re: Visualizzare testo con funzione if
Inviato: 05/06/2013, 22:34
da brunino
Grazie mille micogian, tra la tua guida (mi è stata fondamentale) e le tue risposte ce l'ho fatta! Grazie ancora
Re: Visualizzare testo con funzione if
Inviato: 13/06/2013, 15:32
da brunino
Scusa se disturbo ma ho provato e riprovato, ma non riesco a far funzionare niente.
Nel php ho messo:
Codice: Seleziona tutto
$sql = "SELECT vedinascondi FROM " . PAGE_TABLE . " WHERE id=1";
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
if($row['vedinascondi'] == 1)
{
$template->assign_var('VEDINASCONDI', 'true');
}else{
$template->assign_var('VEDINASCONDI', 'false');
}
Nell'HTML ho messo quindi:
Codice: Seleziona tutto
<!-- IF VEDINASCONDI-->
<p>e qui ho messo il testo</p>
<!-- ENDIF -->
Provo il tutto e appare sempre, sia quando e' 1 che quando e' 0. Dove sbaglio???
So per certo che dal lato database tutto funziona, perche' ho nella stessa pagina altre query che funzionano.
Grazie in anticipo
Re: Visualizzare testo con funzione if
Inviato: 13/06/2013, 18:24
da Micogian
Togli gli apici alle stringhe 'true' e 'false', oppure fai così:
Codice: Seleziona tutto
$sql = "SELECT vedinascondi FROM " . PAGE_TABLE . " WHERE id=1";
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
if($row['vedinascondi'] == 1)
{
$vedinascondi = true;
}else{
$vedinascondi = false;
}
$template->assign_var('VEDINASCONDI', $vedinascondi);
Re: Visualizzare testo con funzione if
Inviato: 13/06/2013, 19:40
da brunino
Grazie mille! Ora funziona! Grazie