[GDRCD 5.4.1] Testo invisibile...?
[GDRCD 5.4.1] Testo invisibile...? postato il 02/04/2017 23:55:31 nel forum programmazione, open source e hosting e modificato da lamartine il 02/04/2017 23:56:06
Salve a tutti :-) ho fatto una piccola modifica alla pagina dei presenti, unendo in un solo codice anche la parte dell'ora-data e della chat dove si è. Ho mantenuto un refresh ogni 60 secondi, in quanto per aggiornare sia i presenti che l'orologio è una cosa necessaria. Il problema è che, ogni tanto, resta solo l'immagine di sfondo. So che il testo c'è, perché se vado a selezionare mi seleziona qualcosa, ma semplicemente sparisce. A cosa può essere dovuto?Il codice:
<meta http-equiv="refresh" content="60"><style>.pagina_info_location{background:url("imgs/roba.png");background-repeat:no-repeat;background-color:transparent !important;border:none !important;color:white !important}.innertube{vertical-align:top !important}.titolo{z-index:100;position:relative;top:-220px;font-size:12px;font-family:'Dosis';color:#a6a5a5}.data{z-index:97;position:relative;top:-215px;font-size:12px;font-family:'Dosis';color:#97670f}#time{z-index:97;position:relative;top:-215px;font-size:12px;font-family:'Dosis';color:#646363}.user{color:#6a6a6a;font-family:'Dosis';position:relative;top:-175px}li{list-style:none;color:#646363;font-family:'Dosis';font-size:12px;}li>a{list-style:none;color:#646363 !important;font-family:'Dosis' !important;font-size:12px;}.elenco_presenti{position:relative;top:-90px;left:35px;}</style><div class="pagina_info_location"><?php /* HELP: Il box delle informazioni carica l'immagine del luogo corrente, lo stato e la descrizione. Genera, inoltre, il meteo */$result = gdrcd_query("SELECT mappa.nome, mappa.descrizione, mappa.stato, mappa.immagine, mappa.stanza_apparente, mappa.scadenza, mappa_click.meteo FROM mappa_click LEFT JOIN mappa ON mappa_click.id_click = mappa.id_mappa WHERE id = ".$_SESSION['luogo']."", 'result'); $record_exists = gdrcd_query($result, 'num_rows');$record = gdrcd_query($result, 'fetch');/** * Fix: quando non si è in una mappa visualizza il nome della chat * Quando si è in una mappa si visualizza il nome della mappa * @author Blancks*/if (empty($record['nome'])){ $nome_mappa = gdrcd_query("SELECT nome FROM mappa_click WHERE id_click = ". (int)$_SESSION['mappa']); $nome_luogo = $nome_mappa['nome'];}else{ $nome_luogo = $record['nome'];}?><center><img src="imgs/Throne_copia.png" style="position: relative; top:-10px; visibility: hidden;"/><img src="imgs/Cerchio_Gold_Luogo_copia.png" style="position: relative; top: -140px; left: 2px;"/><center><span align="center" class="titolo"><?php echo strtoupper(gdrcd_filter('out', $nome_luogo)); ?></span><br/><script>window.setInterval(function(){var a=(new Date).getDate()+"/"+((new Date).getMonth()+1)+"/"+(new Date).getFullYear();span=document.getElementById("data");txt=document.createTextNode(a);span.innerText=txt.textContent},1E3);</script><span align="center" class="data" id="data"><script>var a = (new Date).getDate()+"/"+((new Date).getMonth()+1)+"/"+(new Date).getFullYear();span=document.getElementById("data");txt=document.createTextNode(a);span.innerText=txt.textContent;</script></span><br/><script>function addZero(i) { if (i < 10) { i = "0" + i; } return i;}window.setInterval(function(){var a=(new Date).getHours()+":"+addZero((new Date).getMinutes());span=document.getElementById("time");txt=document.createTextNode(a);span.innerText=txt.textContent},1E3);</script><span id="time"><script>function addZero(i) { if (i < 10) { i = "0" + i; } return i;}var a=(new Date).getHours()+":"+addZero((new Date).getMinutes());span=document.getElementById("time");txt=document.createTextNode(a);span.innerText=txt.textContent;</script></span><p class="user"><?php echo strtoupper($_SESSION['login']);?></p><br/></center></center><!-- Box presenti--><div style="height: 243px;"><?php $query = "SELECT personaggio.nome, personaggio.cognome, personaggio.permessi, personaggio.sesso, personaggio.id_razza, razza.sing_m, razza.sing_f, razza.icon, personaggio.disponibile, personaggio.online_status, personaggio.is_invisible, personaggio.ultima_mappa, personaggio.ultimo_luogo, personaggio.posizione, personaggio.ora_entrata, personaggio.ora_uscita, personaggio.ultimo_refresh, mappa.stanza_apparente, mappa.nome as luogo, mappa_click.nome as mappa FROM personaggio LEFT JOIN mappa ON personaggio.ultimo_luogo = mappa.id LEFT JOIN mappa_click ON personaggio.ultima_mappa = mappa_click.id_click LEFT JOIN razza ON personaggio.id_razza = razza.id_razza WHERE personaggio.ora_entrata > personaggio.ora_uscita AND DATE_ADD(personaggio.ultimo_refresh, INTERVAL 4 MINUTE) > NOW() ORDER BY personaggio.nome";$result = gdrcd_query($query, 'result');echo '<ul class="elenco_presenti">';while ($record = gdrcd_query($result, 'fetch')){ //Stampo il PG echo '<li class="presente">'; //Entrata, uscita PG //Controllo da quanto il pg e' loggato $activity = gdrcd_check_time ($record['ora_entrata']); //Se e' loggato da meno di 2 minuti if ($activity <= 2){ //Lo segnalo come appena entrato echo '<img class="presenti_ico" src="imgs/icons/enter.gif" alt="'.gdrcd_filter('out',$MESSAGE['status_pg']['enter']).'" title="'.gdrcd_filter('out',$MESSAGE['status_pg']['enter']).'" />'; } else { //Altrimenti, se si e' sloggato da piu' di 2 minuti lo segnalo come uscito $activity = gdrcd_check_time ($record['ultimo_refresh']); if ($activity > 3){ echo '<img class="presenti_ico" src="imgs/icons/exit.gif" alt="'.gdrcd_filter('out',$MESSAGE['status_pg']['exit']).'" title="'.gdrcd_filter('out',$MESSAGE['status_pg']['exit']).'" />'; } else { //Altrimenti e' semplicemente loggato echo '<img class="presenti_ico" src="imgs/icons/blank.png" alt="'.gdrcd_filter('out',$MESSAGE['status_pg']['logged']).'" title="'.gdrcd_filter('out',$MESSAGE['status_pg']['logged']).'" />'; }//else }//else switch ($record['permessi']){ case USER: $alt_permessi = ''; break; case GUILDMODERATOR: $alt_permessi = $PARAMETERS['names']['guild_name']['lead']; break; case GAMEMASTER: $alt_permessi = $PARAMETERS['names']['master']['sing']; break; case MODERATOR: $alt_permessi = $PARAMETERS['names']['moderators']['sing']; break; case SUPERUSER: $alt_permessi = $PARAMETERS['names']['administrator']['sing']; break; }//else //Livello di accesso del PG (utente, master, admin, superuser) //echo '<img class="presenti_ico" src="imgs/icons/permessi'.$record['permessi'].'.gif" alt="'.gdrcd_filter('out',$alt_permessi).'" title="'.gdrcd_filter('out',$alt_permessi).'" />'; //Icona stato di disponibilità. E' sensibile se la riga che sto stampando corrisponde all'utente loggato. /*$change_disp=($record['disponibile']+1)%3; echo '<img class="presenti_ico" src="imgs/icons/disponibile'.$record['disponibile'].'.png" alt="'.gdrcd_filter('out',$MESSAGE['status_pg']['availability'][$record['disponibile']]).'" title="'.gdrcd_filter('out',$MESSAGE['status_pg']['availability'][$record['disponibile']]).'" />';*/ //Icona della razza pg /*if($record['icon']==''){$record['icon']='standard_razza.png';} echo '<img class="presenti_ico" src="themes/'.$PARAMETERS['themes']['current_theme'].'/imgs/races/'.$record['icon'].'" alt="'.gdrcd_filter('out',$record['sing_'.$record['sesso']]).'" title="'.gdrcd_filter('out',$record['sing_'.$record['sesso']]).'" />'; //Icona del genere del pg echo '<img class="presenti_ico" src="imgs/icons/testamini'.$record['sesso'].'.png" alt="'.gdrcd_filter('out',$MESSAGE['status_pg']['gender'][$record['sesso']]).'" title="'.gdrcd_filter('out',$MESSAGE['status_pg']['gender'][$record['sesso']]).'" />';*/ //Nome pg e link alla sua scheda /*echo '<a href="main.php?page=messages_center&newmessage=yes&reply_dest='.$record['nome'].'" class="link_sheet">MP</a> ';*/ //Nome pg e link alla sua scheda echo ' <a href="main.php?page=scheda&pg='.$record['nome'].'" class="link_sheet gender_'.$record['sesso'].'">'.gdrcd_filter('out',$record['nome']); /*if (empty($record['cognome'])===FALSE){echo ' '.gdrcd_filter('out',$record['cognome']);}*/ echo '</a> '; echo '</li>';}//whilegdrcd_query($result, 'free');echo '</ul>';?> </div> <center><a href="logout.php"><img src="imgs/Esci_Icon.png" style="position:relative;top:-105px;left:3px;"/></a></center><?php if($record_exists>0 || $_SESSION['luogo']==-1){gdrcd_query($result, 'free');?> <!--Nome luogo--><?php if (empty($record['nome'])===FALSE) { $nome_luogo=$record['nome']; } elseif ($_SESSION['mappa']>=0) { $nome_luogo=$PARAMETERS['names']['maps_location']; } else { $nome_luogo=$PARAMETERS['names']['base_location']; }?><?php if($PARAMETERS['mode']['auto_meteo']=='ON'){/* Meteo */$ore=strftime("%H");$minuti=strftime("%M");$mese=strftime("%m");$giorno=strftime("%j");$caso=((floor($giorno/3))%2)+1;/** * Bug FIX: corretta l'assegnazione della $minima * @author Blancks*/switch ($mese){ case 1: $minima = $PARAMETERS['date']['base_temperature']+0; break; case 2: $minima = $PARAMETERS['date']['base_temperature']+4; break; case 3: $minima = $PARAMETERS['date']['base_temperature']+8; break; case 4: $minima = $PARAMETERS['date']['base_temperature']+14; break; case 5: $minima = $PARAMETERS['date']['base_temperature']+20; break; case 6: $minima = $PARAMETERS['date']['base_temperature']+28; break; case 7: $minima = $PARAMETERS['date']['base_temperature']+30; break; case 8: $minima = $PARAMETERS['date']['base_temperature']+28; break; case 9: $minima = $PARAMETERS['date']['base_temperature']+20; break; case 10: $minima = $PARAMETERS['date']['base_temperature']+14; break; case 11: $minima = $PARAMETERS['date']['base_temperature']+8; break; case 12: $minima = $PARAMETERS['date']['base_temperature']+0; break;}/** * Fine fix */if($ore<14){$gradi=$minima+(floor($ore/3)*$caso);}else{ $gradi=$minima+(4*$caso)-((floor($ore/3)*$caso))+(3*$caso);}$caso=($giorno+($ora/4))%12;switch ($caso){ case 0: $meteo_cond=$MESSAGE['interface']['meteo']['status'][0]; break; case 1: $meteo_cond=$MESSAGE['interface']['meteo']['status'][0]; break; case 2: $meteo_cond=$MESSAGE['interface']['meteo']['status'][1]; break; case 3: $meteo_cond=$MESSAGE['interface']['meteo']['status'][2]; break; case 4: if($minima<4){$meteo_cond=$MESSAGE['interface']['meteo']['status'][4];} else {$meteo_cond=$MESSAGE['interface']['meteo']['status'][3];} break; case 5: $meteo_cond=$MESSAGE['interface']['meteo']['status'][1]; break; case 6: $meteo_cond=$MESSAGE['interface']['meteo']['status'][0]; break; case 7: $meteo_cond=$MESSAGE['interface']['meteo']['status'][1]; break; case 8: if($minima<4){$meteo_cond=$MESSAGE['interface']['meteo']['status'][4];} else {$meteo_cond=$MESSAGE['interface']['meteo']['status'][3];} break; case 9: $meteo_cond=$MESSAGE['interface']['meteo']['status'][2]; break; case 10: $meteo_cond=$MESSAGE['interface']['meteo']['status'][0]; break; case 11: $meteo_cond=$MESSAGE['interface']['meteo']['status'][0]; break;} $meteo=$meteo_cond." - ". $gradi."°C "; //.Tempo();} else { $meteo=gdrcd_filter('out',$record['meteo']); }}?><!--div class="meteo"><?php/* echo $meteo;*/?></div--></div><!-- page_body --></div><!-- Pagina -->
Pagine → 1
04/04/2017 12:57:19
In che senso "sparisce"? Se riesci a selezionarlo il php lo mostra a video. Non è che le scritte sono nere su sfondo nero? O bianche su sfondo bianco?
04/04/2017 13:08:50 e modificato da soizora il 04/04/2017 13:13:52
<script>window.setInterval(function(){var a=(new Date).getDate()+"/"+((new Date).getMonth()+1)+"/"+(new Date).getFullYear();span=document.getElementById("data");txt=document.createTextNode(a);span.innerText=txt.textContent},1E3);</script><span align="center" class="data" id="data"><script>var a = (new Date).getDate()+"/"+((new Date).getMonth()+1)+"/"+(new Date).getFullYear();span=document.getElementById("data");txt=document.createTextNode(a);span.innerText=txt.textContent;</script></span><br/><script>function addZero(i) { if (i < 10) { i = "0" + i; } return i;}window.setInterval(function(){var a=(new Date).getHours()+":"+addZero((new Date).getMinutes());span=document.getElementById("time");txt=document.createTextNode(a);span.innerText=txt.textContent},1E3);</script><span id="time"><script>function addZero(i) { if (i < 10) { i = "0" + i; } return i;}var a=(new Date).getHours()+":"+addZero((new Date).getMinutes());span=document.getElementById("time");txt=document.createTextNode(a);span.innerText=txt.textContent;</script>
una domanda: perchè hai messo tre setinterval che praticamente fanno la stessa cosa?edit: no spe ho riletto meglio il testo e mi pare di capire che il set interval ti serva per aggiornare il testo appena caricato dal refresh ogni settanta secondi.
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
Project Entropy ↗
Naruto x Boruto GDR ↗