PHP Problem / Design wird zerhauen

W

WebKing

Hallo,

habe ein Problem mit einem php-script. Ich passe gerade ein neues Design an ein Script an, bei allen Unterseiten klappt das auch, nur bei 3 nicht.

Hier das neue Design + Script:

http://www.sammlerticket.de/neu/neu2/index.php



So das erste Problem taucht bei der Tauschliste auf, wenn man etwas anklickt:

http://www.sammlerticket.de/neu/neu2/katalog.php?id=10&type=1



Dort wird das Design zerhauen, aber habe auch diese Datei, wie die anderen, an Breite 440 px angepasst.



Bei jeder Unterseite wird oben header.php und unten footer.php includet und die Unterseiten werden in folgenden Codes eingeschlossen:

Code:
<td valign="top" style="background-image: url(images_r7_c4.jpg);"><div align="center">

(Unterseitencode)

</div></td>

</tr>



Nur das unteranderem bei der oben genannten Seite nicht.

Hier deren Quellcode:

Code:
<? include("include/global.php"); ?>

<? include("include/header.php"); ?>

<td valign="top" style="background-image: url(images_r7_c4.jpg);"><div align="center">

<?

function ShowSubKat($id,$d)

{

$qry = mysql_query("SELECT * FROM kategorien WHERE id = $id");

$name = htmlspecialchars(stripslashes(mysql_result($qry,0,'name')));

    $cqry = mysql_query("SELECT * FROM artikel WHERE categoryid = $id AND angefordertvon = 0 AND kattype=0");

$count = mysql_num_rows($cqry);

?>

<table width="440" border="0">

<tr>

<td>

<script language="JavaScript" type="text/JavaScript">

function einblenden()

{

    MM_changeProp('content','','style.display','block','DIV');

    MM_changeProp('button1','','style.display','none','DIV');

    MM_changeProp('button2','','style.display','block','DIV');

}

 

function ausblenden()

{

MM_changeProp('content','','style.display','none','DIV');

MM_changeProp('button1','','style.display','block','DIV');

MM_changeProp('button2','','style.display','none','DIV');

}

</script>

 

 

<a href="katalog.php?id=<?=$id?>"><?=$name?> (<?=$count?>)</a>

<br>

<?

$qry = mysql_query("SELECT id FROM kategorien WHERE aparent = $id ORDER BY name");

for ($i=0;$i<mysql_num_rows($qry);$i++) ShowSubKat(mysql_result($qry,$i),$d+1);

}

 

$id = addslashes($_GET['id']);

$type = $_GET['type']; //type=0 -> kategorie type=1 -> gkategorie

if ($id)

{

if ($type == 1) $qry = mysql_query("SELECT * FROM gkategorien WHERE id = $id ORDER BY name");

else $qry = mysql_query("SELECT * FROM kategorien WHERE id = $id ORDER BY name");

if (@mysql_num_rows($qry) < 1) $id = '';

}

if ($id)

{

if ($type == 1) {

$qry = mysql_query("SELECT * FROM gkategorien WHERE id = $id");

$kat = htmlspecialchars(stripslashes(mysql_result($qry,0,'name')));

$sqry = mysql_query("SELECT COUNT(*) FROM kategorien WHERE parentid = $id AND aparent = -1 ORDER BY name");

$nsub = mysql_result($sqry,0);

?>

<font size="4"><a href="katalog.php">Katalog</a> - <?=$kat?></font><br>

<?

if ($nsub > 0) {

?>

<font size="2">

    <div id="button1" style="display:none"><a href="#" onClick="einblenden()"><img src="images/plus.jpg" border="0"></a>

    Unterkategorien

</div>

    <div id="button2"><a href="#" onClick="ausblenden()"><img src="images/minus.jpg" border="0"></a>

Unterkategorien

</div>

<div id="content">

        <?

$sqry = mysql_query("SELECT * FROM kategorien WHERE parentid = $id AND aparent = -1 ORDER BY name");

for ($i=0;$i<mysql_num_rows($sqry);$i++) {

     if ($i == ceil(mysql_num_rows($sqry)/2)) echo '</td><td valign="top">';

ShowSubKat(mysql_result($sqry,$i,'id'),1);

}

?>

</div>

</font>

<?

}

}

else {

$qry = mysql_query("SELECT * FROM kategorien WHERE id = $id");

$subkat = htmlspecialchars(stripslashes(mysql_result($qry,0,'name')));

$parent = mysql_result($qry,0,'parentid');

$qry = mysql_query("SELECT * FROM gkategorien WHERE id = $parent");

$kat = htmlspecialchars(stripslashes(mysql_result($qry,0,'name')));

$sqry = mysql_query("SELECT COUNT(*) FROM kategorien WHERE aparent = $id ORDER BY name");

$nsub = mysql_result($sqry,0);

?>

<font size="4"><a href="katalog.php">Katalog</a> - <a href="katalog.php?id=<?=$parent?>&type=1"><?=$kat?></a> &gt; <?=$subkat?></font><br>

<?

if ($nsub > 0) {

?>

<font size="2">

    <div id="button1"><a href="#" onClick="einblenden()"><img src="images/plus.jpg" border="0"></a>

    Unterkategorien

</div>

    <div id="button2" style="display:none"><a href="#" onClick="ausblenden()"><img src="images/minus.jpg" border="0"></a>

Unterkategorien

</div>

<div id="content" style="display:none">

<?

$sqry = mysql_query("SELECT * FROM kategorien WHERE aparent = $id ORDER BY name");

for ($i=0;$i<mysql_num_rows($sqry);$i++)

ShowSubKat(mysql_result($sqry,$i,'id'),1);

echo '<br>';

 

?>

</div>

</font>

<?

}

}

 

     if (!$_GET['start']) $start = 0;

     else $start = $_GET['start'];

     if ($type == 1) $qry = mysql_query("SELECT COUNT(*) FROM artikel WHERE categoryid = $id AND kattype = 1");

     else $qry = mysql_query("SELECT COUNT(*) FROM artikel WHERE categoryid = $id AND kattype = 0");

     $count = mysql_result($qry,0);

     if ($start > $count) $start = $count-50;

     if ($start < 0) $start = 0;

     echo '<br>';

     if ($type == 1)

        $qry = mysql_query("SELECT * FROM artikel WHERE categoryid = $id AND angefordertvon = 0 AND kattype = 1 ORDER BY datum DESC LIMIT $start,50");

     else

     $qry = mysql_query("SELECT * FROM artikel WHERE categoryid = $id AND angefordertvon = 0 AND kattype = 0 ORDER BY datum DESC LIMIT $start,50");

if (mysql_num_rows($qry) < 1)

{

     if (($type == 1) && ($nsub == 0)) echo "<i>Zur Zeit keine Artikel in dieser Kategorie!</i>";

}

else

{

     if (($start == 0) || ($start < 50))

         $sback = 0;

     else

$sback = $start-50;

if (($start == $count) || ($start > $count-50)) {

     $snext = 0;

     while ($count > 50) {

         $snext += 50;

     $count -= 50;

     }

}

else

$snext = $start+50;

?>

<a href="katalog.php?id=<?=$id?>&start=<?=$sback?>">&lt;&lt; zur&uuml;ck</a> <?=$start?> - <?=$start+49?> <a href="katalog.php?id=<?=$id?>&start=<?=$snext?>">vor &gt;&gt;</a>

<table border=0 cellspacing=0 cellpadding=0 width="400">

<tr>

<td bgcolor=#EFEFEF width="200">Bezeichnung</td>

<td bgcolor=#EFEFEF width="100">Eingetragen von</td>

<td bgcolor=#EFEFEF width="100">Eingetragen am</td>

</tr>

<?

for ($i=0;$i<mysql_num_rows($qry);$i++)

{

     $bezeichnung = htmlentities(stripslashes(mysql_result($qry,$i,'bezeichnung')));

     $userid = mysql_result($qry,$i,'userid');

     $id = mysql_result($qry,$i,'id');

     $datum = date("d.m.Y",mysql_result($qry,$i,'datum'));

     $uqry = mysql_query("SELECT username FROM user WHERE id = $userid");

     if (mysql_num_rows($uqry) < 1) $fuser = 'unknown';

     else $fuser = mysql_result($uqry,0);

     echo "<tr><td bgcolor=white>";

     echo "<a href=\"artikel.php?id=$id\">";

     echo $bezeichnung;

     echo "</a></td><td bgcolor=white>";

     echo "<a href=\"profile.php?id=$userid\">";

     echo $fuser;

     echo "</a></td><td bgcolor=white>";

     echo $datum;

echo "</td></tr>";

}

?>

</table> 

<a href="katalog.php?id=<?=$id?>&start=<?=$sback?>">&lt;&lt; zur&uuml;ck</a> <?=$start?> - <?=$start+49?> <a href="katalog.php?id=<?=$id?>&start=<?=$snext?>">vor &gt;&gt;</a>

</td></tr></table>

<?

}

}

else

{

     katalog();

}

 

 

include("include/footer.php"); ?>

</div></td>

</tr>



Verstehe aber nicht, warum er die Seite da zerhaut, hat jemand da irgendeine Idee, was daran falsch ist und wie ich das beheben kann?

Bei allen anderen Seiten geht es ja, wie z.B.:

http://www.sammlerticket.de/neu/neu2/forum.php



Danke.
 
Ich habe mir mal den quelltext der angezeigten Seite angeschaut.
Vielleicht solltest du alle Tabellen schließen, die du öffnest.
Du machst nämlich 10 mal einen table Tag auf aber nur 4 mal zu.

Und auf den Seiten wo alles richtig angezeigt wird, da machst du 4 mal einen table Tag auf auf und auch 4 mal zu.
 
Zuletzt bearbeitet:
Zurück