FluxBB.fr

Le site des utilisateurs francophones de FluxBB.

Vous n'êtes pas identifié(e).

#1 17-06-2012 23:47:30

El Matador
Membre
Inscription : 02-09-2010
Messages : 97

Problème affichage CSS ?

Bonsoir,

J'ai voulu regrouper mon système de balises dans balise.php (include/balises.php).
Voici une partie de mon viewforum.php :

<?php

// Retrieve a list of topic IDs, LIMIT is (really) expensive so we only fetch the IDs here then later fetch the remaining data
$result = $db->query('SELECT id FROM '.$db->prefix.'topics WHERE forum_id='.$id.' ORDER BY sticky DESC, '.$sort_by.', id DESC LIMIT '.$start_from.', '.$pun_user['disp_topics']) or error('Unable to fetch topic IDs', __FILE__, __LINE__, $db->error());

// If there are topics in this forum
if ($db->num_rows($result))
{
	$topic_ids = array();
	for ($i = 0;$cur_topic_id = $db->result($result, $i);$i++)
		$topic_ids[] = $cur_topic_id;

	if (empty($topic_ids))
		error('The topic table and forum table seem to be out of sync!', __FILE__, __LINE__);

	// Fetch list of topics to display on this page
	if ($pun_user['is_guest'] || $pun_config['o_show_dot'] == '0')
	{
		// Without "the dot"
		$sql = 'SELECT id, poster, subject, description, posted, last_post, last_post_id, last_poster, num_views, num_replies, closed, sticky, moved_to FROM '.$db->prefix.'topics WHERE id IN('.implode(',', $topic_ids).') ORDER BY sticky DESC, '.$sort_by.', id DESC';
	}
	else
	{
		// With "the dot"
		$sql = 'SELECT p.poster_id AS has_posted, t.id, t.subject, t.description, t.poster, t.posted, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.num_replies, t.closed, t.sticky, t.moved_to FROM '.$db->prefix.'topics AS t LEFT JOIN '.$db->prefix.'posts AS p ON t.id=p.topic_id AND p.poster_id='.$pun_user['id'].' WHERE t.id IN('.implode(',', $topic_ids).') GROUP BY t.id'.($db_type == 'pgsql' ? ', t.subject, t.description, t.poster, t.posted, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.num_replies, t.closed, t.sticky, t.moved_to, p.poster_id' : '').' ORDER BY t.sticky DESC, t.'.$sort_by.', t.id DESC';
	}

	if ($pun_user['is_guest'] || $pun_config['o_show_dot'] == '0')
		$sql = 'SELECT u.id AS uid, u.group_id, up.id AS up_id, up.group_id AS up_group_id, t.id, t.poster, t.subject, t.posted, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.num_replies, t.closed, t.sticky, t.moved_to FROM '.$db->prefix.'topics AS t LEFT JOIN '.$db->prefix.'users AS u ON (t.last_poster=u.username) LEFT JOIN '.$db->prefix.'users AS up ON (t.poster=up.username) WHERE t.forum_id='.$id.' ORDER BY t.sticky DESC, '.(($cur_forum['sort_by'] == '1') ? 't.posted' : 't.last_post').' DESC LIMIT '.$start_from.', '.$pun_user['disp_topics'];
	else
	{
		$sql = str_replace('SELECT', 'SELECT u.id AS uid, u.group_id, up.id AS up_id, up.group_id AS up_group_id, ', $sql);
		$sql = str_replace('WHERE', ' LEFT JOIN '.$db->prefix.'users AS u ON (t.last_poster=u.username) LEFT JOIN '.$db->prefix.'users AS up ON (t.poster=up.username) WHERE', $sql);
	}
	
	$result = $db->query($sql) or error('Unable to fetch topic list', __FILE__, __LINE__, $db->error());

	$topic_count = 0;
	while ($cur_topic = $db->fetch_assoc($result))
	{
		++$topic_count;
		$status_text = array();
		$item_status = ($topic_count % 2 == 0) ? 'roweven' : 'rowodd';
		$icon_type = 'icon';

		if ($cur_topic['moved_to'] == null)
			$last_post = '<a href="viewtopic.php?pid='.$cur_topic['last_post_id'].'#p'.$cur_topic['last_post_id'].'">'.format_time($cur_topic['last_post']).'</a> <span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['last_poster']).'</span>';
		else
			$last_post = '- - -';

		if ($pun_config['o_censoring'] == '1'){
		$cur_topic['subject'] = censor_words($cur_topic['subject']);
		$cur_topic['description'] = censor_words($cur_topic['description']);}

		if ($cur_topic['sticky'] == '1')
		{
			$item_status .= ' isticky';
			$status_text[] = '<span class="stickytext">'.$lang_forum['Sticky'].'</span>';
		}
		

		if ($cur_topic['moved_to'] != 0)
{
	$subject = '<a href="'.fluxrewrite("topic-", $cur_topic['moved_to'], $cur_topic['subject'], 1, false, false).'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['poster']).'</span>';
	$status_text[] = '<span class="movedtext">'.$lang_forum['Moved'].'</span>';
	$item_status .= ' imoved';
}
else if ($cur_topic['closed'] == '0')
	$subject = '<a href="'.fluxrewrite("topic-", $cur_topic['id'], $cur_topic['subject'], 1, false, false).'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['poster']).'</span>';
else
{
	$subject = '<a href="'.fluxrewrite("topic-", $cur_topic['id'], $cur_topic['subject'], 1, false, false).'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['poster']).'</span>';
	$status_text[] = '<span class="closedtext">'.$lang_forum['Closed'].'</span>';
	$item_status .= ' iclosed';
}

		if (!$pun_user['is_guest'] && $cur_topic['last_post'] > $pun_user['last_visit'] && (!isset($tracked_topics['topics'][$cur_topic['id']]) || $tracked_topics['topics'][$cur_topic['id']] < $cur_topic['last_post']) && (!isset($tracked_topics['forums'][$id]) || $tracked_topics['forums'][$id] < $cur_topic['last_post']) && $cur_topic['moved_to'] == null)
		{
			$item_status .= ' inew';
			$icon_type = 'icon icon-new';
			$subject = '<strong>'.$subject.'</strong>';
			$subject_new_posts = '<span class="newtext">[ <a href="'.fluxrewrite("topic-", $cur_topic['id'], $cur_topic['subject'], null, true, false).'" title="'.$lang_common['New posts info'].'">'.$lang_common['New posts'].'</a> ]</span>';
		}
		else
			$subject_new_posts = null;

		if (isset($cur_topic['up_group_id'])) // user
			$col_group = colorize_group($cur_topic['poster'], $cur_topic['up_group_id'], $cur_topic['up_id']);
		else // guest
			$col_group = colorize_group($cur_topic['poster'], PUN_GUEST);

		$subject = str_replace('<span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['poster']).'</span>', '<span class="byuser">'.$lang_common['by'].' '.$col_group.'</span>', $subject);

		if ($cur_topic['last_post'] != '')
		{
			if (isset($cur_topic['group_id'])) // user
				$col_group = colorize_group($cur_topic['last_poster'], $cur_topic['group_id'], $cur_topic['uid']);
			else // guest
				$col_group = colorize_group($cur_topic['last_poster'], PUN_GUEST);

			$last_post = str_replace('<span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['last_poster']).'</span>', '<span class="byuser">'.$lang_common['by'].' '.$col_group.'</span>', $last_post);
		}	
			
		// Insert the status text before the subject
		$subject = implode(' ', $status_text).' '.$subject;

		// Should we display the dot or not? :)
		if (!$pun_user['is_guest'] && $pun_config['o_show_dot'] == '1')
		{
			if ($cur_topic['has_posted'] == $pun_user['id'])
			{
				$subject = '<strong class="ipost">·&#160;</strong>'.$subject;
				$item_status .= ' iposted';
			}
		}

		$num_pages_topic = ceil(($cur_topic['num_replies'] + 1) / $pun_user['disp_posts']);
		$icon_type = 'icon';

		if ($num_pages_topic > 1)
			$subject_multipage = '<span class="pagestext">[ '.paginate_rewrited($num_pages_topic, -1, 'topic-'.$cur_topic['id'].'-'.clean_url($cur_topic['subject'])).' ]</span>';
		else
			$subject_multipage = null;

		// Should we show the "New posts" and/or the multipage links?
		if (!empty($subject_new_posts) || !empty($subject_multipage))
		{
			$subject .= !empty($subject_new_posts) ? ' '.$subject_new_posts : '';
			$subject .= !empty($subject_multipage) ? ' '.$subject_multipage : '';
		}
		
		require 'include/balise.php'; 
		

?>

Comme vous pouvez le voir, en fin de code il y a :

require 'include/balise.php'; 

Sauf que lorsque je met ça, ça me crée un problème d'affichage :

image.num1339969598.of.world-lolo.com.png

ça me déclare ma barre et ça fait un espace blanc

voici mon balise.php :

<?php 
$subject = str_replace('[Annonce]', '<strong><span style="color:#f2c53a">[Annonce]</span></strong>', $subject);
$subject = str_replace('[Réglé]', '<strong><span style="color:#66ff00">[Réglé]</span></strong>', $subject);
$subject = str_replace('[Ouvert]', '<strong><span style="color:#00FF00">[Ouvert]</span></strong>', $subject);
$subject = str_replace('[Fermé]', '<strong><span style="color:#FF0000">[Fermé]</span></strong>', $subject);
$subject = str_replace('[Nouvelle]', '<strong><span style="color:#f2c53a">[Nouvelle]</span></strong>', $subject);
$subject = str_replace('[Information]', '<strong><span style="color:#3e7b63">[Information]</span></strong>', $subject);
$subject = str_replace('[INFORMATION]', '<strong><span style="color:#3e7b63">[Information]</span></strong>', $subject);
$subject = str_replace('[Important]', '<strong><span style="color:#f2883a">[Important]</span></strong>', $subject);
$subject = str_replace('[IMPORTANT]', '<strong><span style="color:#f2883a">[Important]</span></strong>', $subject); 
?>

où est le problème ?
merci d'avance

Hors ligne

#2 18-06-2012 10:03:23

Otomatic
Régisseur
Lieu : Paris, France
Inscription : 12-12-2005
Messages : 3 660
Site Web

Re : Problème affichage CSS ?

Bonjour,

La solution (éventuelle) ne peut être trouvée qu'en voyant le forum, pas avec une image.
Utiliser l'extension Firebug avec Firefox permet de voir la totalité de la page, avec les CSS et le code HTML et les styles calculés, etc. Une image ne permet de voir que les conséquences, pas la cause.
Mettre les code dans le message ne sert à rien, c'est un problème de mise en page.


Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Sont différents : ça et sa - est et ait - à et a - ce et se - mes et mais ou met - été et était - c'est et ces - ce-si et ceci
La vie sans musique est tout simplement une erreur, une fatigue, un exil. Friedrich Nietzsche

Hors ligne

#3 18-06-2012 10:15:37

El Matador
Membre
Inscription : 02-09-2010
Messages : 97

Re : Problème affichage CSS ?

Bonjour,

Au niveau du code :

<div id="brdmain">
<div class="linkst">
	<div class="inbox crumbsplus">
		<ul class="crumbs">
			<li><a href="index.php">Accueil</a></li>
			<li><span>»&#160;</span><a href="forum-21-la-brasserie-d-uz-page-1.html"><strong>La Brasserie D&#039;UZ</strong></a></li>
		</ul>
		<div class="pagepost">
			<p class="pagelink conl"><span class="pages-label">Pages&#160;: </span><strong class="item1">1</strong> <a href="forum-21-la-brasserie-d-uz-page-2.html">2</a> <a href="forum-21-la-brasserie-d-uz-page-3.html">3</a> <span class="spacer">…</span> <a href="forum-21-la-brasserie-d-uz-page-29.html">29</a> <a href="forum-21-la-brasserie-d-uz-page-2.html">Suivant</a></p>
			<p class="postlink conr"><a href="post.php?fid=21">Nouvelle discussion</a></p>
		</div>
		<div class="clearer"></div>
	</div>
</div>

<div id="vf" class="blocktable">
	<div class="box">
		<div class="inbox">
			<table cellspacing="0">
			<thead>
				<tr>
					<th class="tcl" scope="col">Discussion</th>
					<th class="tc2" scope="col">Réponses</th>
					<th class="tc3" scope="col">Vues</th>
					<th class="tcr" scope="col">Dernier message</th>
				</tr>
			</thead>
			<tbody>

Merci, je vais tester avec Firebug smile

Hors ligne

#4 18-06-2012 22:22:23

El Matador
Membre
Inscription : 02-09-2010
Messages : 97

Re : Problème affichage CSS ?

Toujours rien hmm

Hors ligne

#5 19-06-2012 09:42:53

Otomatic
Régisseur
Lieu : Paris, France
Inscription : 12-12-2005
Messages : 3 660
Site Web

Re : Problème affichage CSS ?

Bonjour,

Je vais finir par m'énerver :fouet: Il est impossible de corriger un problème de mise en page aux seules vues du code php ou d'une image. URL du forum ?


Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Sont différents : ça et sa - est et ait - à et a - ce et se - mes et mais ou met - été et était - c'est et ces - ce-si et ceci
La vie sans musique est tout simplement une erreur, une fatigue, un exil. Friedrich Nietzsche

Hors ligne

#6 19-06-2012 11:00:53

El Matador
Membre
Inscription : 02-09-2010
Messages : 97

Re : Problème affichage CSS ?

Je comprends, cependant il s'agit d'un site non toléré ici-même (warez).
Le nom si vous voulez regarder : www.Ultim-Zone DOT in.
Cordialement.

Hors ligne

#7 19-06-2012 12:43:14

Otomatic
Régisseur
Lieu : Paris, France
Inscription : 12-12-2005
Messages : 3 660
Site Web

Re : Problème affichage CSS ?

Bonjour,

Déjà, la première et indispensable chose à faire, avant de regarder quels pourraient être les machins qui foutent en l'air la mise en page, est d'obtenir une page sans erreurs et conforme W3C. Or, que peut-on voir sur la page de visualisation d'un forum : 31 erreurs par l'extension HTML Validator et la même chose par le validateur W3C :
Errors found while checking this document as XHTML 1.0 Strict!
Result:     31 Errors, 1 warning(s)

Le lancement du Validateur W3C devrait être la première opération à effectuer lorsqu'il y a un problème, ça permet de voir beaucoup de choses et de corriger facilement et rapidement les problèmes, par exemple :
Byte-Order Mark found in UTF-8 File.
qui suffit, en lui-même, pour mettre le caca dans une mise en page.

Donc, et je ne fais que répéter une évidence :
Avant de s'attaquer à des problèmes de mise en page ou d'apparence, il est impératif que la page soit valide W3C

Et puis, Firebug utilisé (Pas seulement chargé ou survolé :taper: ) montre, pour l'« espace » supplémentaire

<div class="inbox">
&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	&#65279;	
<table cellspacing="0">

Seize entités HTML - qui d'ailleurs n'ont rien à faire dans des pages déclarées utf8 - suffisent à créer un « espace » et qui représentent FEFF  ZERO WIDTH NO-BREAK SPACE c'est-à-dire une entête BOM UTF-16 Big Endian.

Si, comme je le répète depuis belle lurette, tu avais lancé la validation W3C, tu aurais pu régler ton problème tout seul.


Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Sont différents : ça et sa - est et ait - à et a - ce et se - mes et mais ou met - été et était - c'est et ces - ce-si et ceci
La vie sans musique est tout simplement une erreur, une fatigue, un exil. Friedrich Nietzsche

Hors ligne

#8 19-06-2012 13:17:47

El Matador
Membre
Inscription : 02-09-2010
Messages : 97

Re : Problème affichage CSS ?

Merci à vous, Otomatic, l'erreur est corrigée.
Pour ce qui est de la validation W3C, au niveau du CSS nous avons une bonne soixantaine d'erreurs dues au CSS3.
Nous allons corriger au fur et à mesure ces erreurs.
Cordialement, et merci encore !

Hors ligne

Pied de page des forums