Mein HTML-newsscript zerstört Tabellen...*grml*

spinchmeister

Mitglied
Hallo, ich habe folgendes Problem und bin echt schon verzweifelt...
Vorher muss ich aber noch sagen, dass ich in PHP echt meine Macken habe und mich eher im grafischen Bereich wohl fühle...

Nun zu meinem Problem:
Ein Freund hat mir vor einiger Zeit ein Newsscript gecodet, was einem normalen Newsscript sehr ähnlich ist. Ich habe dies so "umgeschrieben", dass es im Grunde keinen anderen Zweck erfüllen soll: HTML-code zu posten, sodass ich die News mit eigenen grafischen Tabellen etc. machen kann (immer andere Bilder..eben normaler HTML-code!!) - Das Problem ist aber: Sobald Tabellen ins Spiel kommen erfindet das script <br> tags etc. dazu, wodurch ein "design-disaster" entteht...
habe die paar files auch als Anhang angelegt, in der Hoffnung, dass jemand den Fehler findet (sind ganz wenig files ;) - Natürlich würde ich mich versuchen zu revanchieren..
 

Anhänge

Zuletzt bearbeitet:
Hallo,

hmm warum hast du das Script denn nicht hier rein kopiert, das wurde sehr viel leichter machen, denn ich selber lade mir keine Sachen runter die ich nicht kenne. Also wenn man dir helfen soll dann poste doch mal den Code hier rein.

Gruß Blümchen
 
naja..es sind mehrere php-dateien, die sich ohne weiters mit dem editor öffnen lassen..hmm..aber nagut..und ich weiss eben nicht genau, wo der fehler begraben ist in den 5 files...aber da ich jede Hilfe brauche...hier der Code von der index, wo alles wiedergegeben wird:

PHP:
<?php include("config.php"); ?>
<img border="0" src="../titles/newstitle.gif">
<br>
  <?php

$DS_ANZAHL = 5;
if (!isset($HTTP_GET_VARS['start'])) $HTTP_GET_VARS['start'] = "0";
if (!isset($HTTP_GET_VARS['next_start'])) $HTTP_GET_VARS['next_start'] = "0";

$conn_id = mysql_connect($HOST,$ID,$PW); 
mysql_select_db($DB);

$result = mysql_query("select nr,name,news,email,name,datum,inhalt,feedback from $TABELLE where feedback = '0' order by nr desc LIMIT {$HTTP_GET_VARS['start']},$DS_ANZAHL");
$result1 = mysql_query("select nr from $TABELLE where feedback = '0'");
$num = mysql_numrows($result1);

while ($row = mysql_fetch_object($result))
{
	$nr = $row->nr;
	$name = $row->name;
	$news = $row->news;
	$email = $row->email;
	$datum = $row->datum;
	$inhalt = $row->inhalt;
	$feedback = $row->feedback;
	
	$name = "<A HREF=\"mailto:$email\">$name</A>";	
	$inhalt = nl2br($inhalt);
	
?>


<table align="center" width="300" border="0" cellpadding="0" cellspacing="0">
 
  <tr> 
    <td valign="top" align="center">


      <?php echo $inhalt ?>
     
     <br>
	     <?php
	$result1 = mysql_query("select feedback from $TABELLE where feedback = '$nr'" ); 
	$check	 = mysql_num_rows( $result1 );
	if (!$check) $url = "feedback/feedback_write.php?nr=$nr";
	else $url ="feedback/feedback.php?nr=$nr"; 
	echo "<a href='#' onClick=window.open('$url','Komment','toolbar=0,menubar=0,loactionbar=0,hotkey=0,height=400,width=560,scrollbars=yes')>Kommentar ($check)</a>";
	?>
   
      </td>
  </tr>
  
</table>

<?php } ?>


<center>
<?php 
if ($num > $DS_ANZAHL) 
{
	$seiten = $num / $DS_ANZAHL;
	$seiten = ceil($seiten);

	$i = ($HTTP_GET_VARS['start'] / $DS_ANZAHL) -1;
	if ($i < 1) 
	{
		$i = 1;
		$HTTP_GET_VARS['next_start'] = 0;
	}
	else $HTTP_GET_VARS['next_start'] = $HTTP_GET_VARS['start'] - (2 * $DS_ANZAHL);
	
	if (($seiten - $i) >= 5) $seiten1 = $i + 4 ;
	else $seiten1 = $seiten;
	if ($i >= 2)  echo "<a href='{$HTTP_SERVER_VARS['PHP_SELF']}?start=0'><<</a> &nbsp;...&nbsp; ";

		for ($i; $i<= $seiten1; $i++) 
		{
			if ($HTTP_GET_VARS['next_start'] == $HTTP_GET_VARS['start']) echo "<a href='{$HTTP_SERVER_VARS['PHP_SELF']}?start={$HTTP_GET_VARS['next_start']}'><b>[ $i ]</b></a> ";
			else echo "<a href='{$HTTP_SERVER_VARS['PHP_SELF']}?start={$HTTP_GET_VARS['next_start']}'>$i</a> ";
			$HTTP_GET_VARS['next_start'] = $HTTP_GET_VARS['next_start'] + $DS_ANZAHL;
		}
	$endstart = ($seiten - 1) * $DS_ANZAHL;
	if (($i-1) < $seiten)  echo " &nbsp;...&nbsp; <a href='{$HTTP_SERVER_VARS['PHP_SELF']}?start=$endstart'>>></a>";

}
else echo "<b><a href='{$HTTP_SERVER_VARS['PHP_SELF']}?start=0'>[ 1 ]</a></b>";
?>
</center>
 
Zuletzt bearbeitet:
Grundsätzlich ja, aber da wir noch nicht wissen, ob das tatsächlich das gewünschte Ergebnis bringt, empfehle ich erst die Zeile auszukommentieren:

PHP:
// $inhalt = nl2br($inhalt);
# $inhalt = nl2br($inhalt);

Such dir eine Variante aus. Mach das/die Zeichen davor und ruf das Skript neu auf.
 
Ein kleiner tipp so am rande: Wenn du spätere Fehler vermeiden möchtest, dann ersetze die alten Tags wie <b> oder <center> durch die neuen bzw css

Kommt auch mehr profimäßig rüber ,oder?
 
Zurück