IlchNews Kommentarfunktion bei include

Xeal87

Erfahrenes Mitglied
Hallo.
Auf becks-bier-boys de.vu hab ich mich mal dran
versucht das Newsscript von Ilch zu includen (ilch.de)
Wie ihr sicher seht, arbeite ich bereits mit dynamischen php Seiten (index.php?action=blablabla).
Ich kann bis jetzt news posten und sie werden auch so angezeigt wie ich es mag.
Nur mit der Kommentarfuntkion gibt es noch das Problem, dass bei der news die gleichen Kommentare angezeigt werden...
Könnt ihr mir sagen was ich falsch gemacht haben ?
Ich habe die news.php aus technischen Gründen in ilchnews.php umbenannt, dann aber in den restlichen dateien den Dateinamen jeweils angepasst (suchen nach news.php und erstetzt durch ilchnews.php)
so sieht mein link zur kommentarfunktion aus (in der Templatedatei)
index.php?action=ilchnews&newsid={ID}
Hier mal der Code der ilchnews.php
Code:
<?php
/*

ilchNews 0.0.2

Copyright by Manuel Staechele

Support: www.ilch.de
                                                         
Dieses Script ist Eigentum von Manuel Stächele.
Dieses Script kann frei verwendet, zum download Angeboten
und angepasst werden, solange auf jeder Seite des Scripts 
der sichtbarer Copyright Vermerk und ein Link auf ilch.de besteht.

*/


require_once ( 'news_config.php' );

?>
<style type="text/css">
<!--
  td, textarea, input, a, body, table {
	  font-size: 11px;
	  font-family: verdana;
	  color: #000000;
	}
-->
</style>
<?php

if ( empty ( $newsid ) ) {
  # alle news anzeigen
  
	if(empty($page)) {  $page = 1;  }
  $MPL = makeSites ($page , $limit , $table_news );
  $anfang = ($page - 1) * $limit;
	
	$erg = mysql_query("SELECT * FROM `".$table_news."` ORDER BY time DESC LIMIT $anfang , $limit");
  while ($row = mysql_fetch_object($erg)) {
    $zk = @mysql_query("SELECT COUNT(id) FROM `".$table_news_koms."` WHERE uid = '".$row->id."'");
    $zK = @mysql_result($zk,0);
		
		$txtlan = strlen($row->text);
		if ($txtlan > $txtlimit) {
		  $txt = substr($row->text, 0, $txtlimit).' ...';
		} else {  
		  $txt = $row->text;
		}
		$txt = stripslashes($txt);
		$txt = str_replace('<br>','',$txt);
		$txt = str_replace('<br />','',$txt);
		$txt = str_replace("\n",'<br>',$txt);
		
		if ( file_exists( './images/news/'.$row->uid.'.gif' ) ) {
		  $kat = '<img src="images/news/'.$row->uid.'.gif" alt="">';
		} elseif ( file_exists ( './images/news/'.$row->uid.'.jpg' ) ) {
		  $kat = '<img src="images/news'.$row->uid.'.jpg" alt="">';
		} else {
		  $kat = $row->uid;
		}
		
		parse
		(
		  array
			(
        'DATE' => date('d M Y - H:i:s',$row->time),
				'TEXT' => $txt,
				'NAME' => $row->titel,
				'KATE' => $kat,
				'KOMS' => $zK,
				'ID'   => $row->id		
			) , 'news_index'
		);
		
  }
  
	echo '<br /><br /><div align="center">'.$MPL.'<br /><a href="news_admin.php">Administrieren</a><br />ilchNews 0.0.1 Copyright by <a href="http://www.ilch.de/" target="_blank">ilch.de</a></div>';
	
} else {
  # mehr news anzeigen
  $row = mysql_fetch_object(mysql_query("SELECT * FROM `".$table_news."` WHERE `id` = '".$newsid."'"));
	echo '<h3><b>'.$row->titel.'</b></h3> am: '.date("d.m.Y - H:i:s",$row->time).'<br />';
	echo stripslashes($row->text);
	
	if ( $coment == 1 ) {
	  echo '<br /><br /><hr style="height: 0px; border: dashed #000000 0px; border-top-width: 1px; " />';
		if ( !empty ( $_POST['sub']) ) {
		  $name = trim($_POST['komname']);
			$txt  = trim($_POST['txt']);
			if ( empty ( $name ) OR empty ($txt) ) {
			  echo '<b>Bitte einen Namen und ein Kommentar angeben</b><br /><br />';
			} else {
			  $name = strip_tags($name);
				$txt  = strip_tags($txt);
				$ztxt = explode(" ", $txt);
				$txt = '';
	      for ($i=0;$i<=(count($ztxt)-1);$i++){
	        $txt .= chunk_split($ztxt[$i],35," "); 
				}
		    $txt = str_replace("\n",'<br>',$txt);
		    $txt = addslashes($txt);
				mysql_query('INSERT INTO `'.$table_news_koms.'` (name,text,uid) VALUES ("'.$name.'","'.$txt.'","'.$_POST['newsid'].'")');
		    echo '<b>Kommentar wurde erfolgreich eingetragen</b><br /><br />';
			}
		}
		
		?>
		<form action="ilchnews.php" method="POST">
		  <input type="hidden" name="newsid" value="<?php echo $newsid; ?>">
		  <table border="0" cellpadding="2" cellspacing="0">
			  <tr>
				  <td>Name</td>
					<td><input type="text" name="komname"></td>
				</tr><tr>
				  <td valign="top">Kommentar</td>
					<td><textarea cols="40" rows="2" name="txt"></textarea></td>
				</tr><tr>
				  <td></td>
					<td><input type="submit" value="Add Kommentar" name="sub"></td>
				</tr>
			</table>
		</form><b>Kommentare</b>
		<table width="100%" border="0" cellpadding="0" cellspacing="0">
		  <?php
        $erg = mysql_query("SELECT * FROM `".$table_news_koms."` WHERE `uid` = '".$newsid."' ORDER by id DESC");
			  while ($row1 = mysql_fetch_object($erg)) { 
				  echo '<tr><td width="20%" valign="top"><b>'.$row1->name.'</b></td>';
			    echo '<td width="80%">'.$row1->text.'</td></tr>';
		    }
		  ?>
		</table>
		
	  <?php	
	}
	
	
}

?>

Weiterhin gibt es ne config_news.php und ne admin_news.php. außerdem noch ne templatedatei.
Grüße
Xeal
 
sorry, aber ich verstehe jetzt dein problem nicht, hab mir die seite angesehen und sieht doch alles toll aus.
 
Zuletzt bearbeitet:
Funktioniert mitlerweile auch *g*
Dreamweaver hat irgendwie mit einer geschweiften Klammer Probleme gehabt...
Damit haben die IDs zu den jeweiligen news nicht mehr gestimmt.
Danke trotzdem :)
cya
 
Zurück