Home | Registrieren | Einloggen | Suchen | Aktuelles


Forum » PHP & MySQL » Newssystem includen, Kommenatre machen Probleme Antworten
Newssystem includen, Kommenatre machen Probleme

Xeal
Otto-Normal-Poster


Beiträge: 86


Hallo.
auf www.becks-bier-boys.de.vu habe ich ein newssystem included.
Das Problem dabei ist, dass zwar kommentare schreiben kann, sich die Variable mit der Anzahl der Kommentare nicht erhöht.
Außerdem werden die Kommentare, bei jeder News angezeigt (die selben).
Also ich mache z.B. zu News eins ein Kommentar und dann steht bei news 1 und bei News 2 der gleiche Kommentar.
Könnt ihr mir einen Tip geben wie ich das problem lösen kann ?

---
www.xeal.de : Bald in der Sommerversion !

  Profil   E-Mail   Editieren   Zitieren

languitar
Foren-Team


Beiträge: 2795


bisschen informationen welches system, und den entsprechenden code wären schon ganz gut!

---
Take a look here!
Lichtblick - Einblick - Ausblick

  Profil   E-Mail   Website   Editieren   Zitieren

nisita
Posting-Schinder


Beiträge: 553


hej.. lang nichts mehr von dir gehört..
das ist schwierig, das ohne überhaupt etwas von dem code zu sehen..
allerdings finde ich schon die verlinkung zu den news sehr seltsam... vorallem die ID..
1:
newsid=%7BID%7D


ansonsten, würde ich dir natürlich gerne weiter helfen.. aber die infos sind doch recht sperlich ;)

viele grüße noch,
nisita

---
"Wir sollten lernen, uns allmählich vom Überfluss zu befreien, um zur Einfachheit unseres eigenen Wesens vorzudringen." Jean Gastaldi

  Profil   Editieren   Zitieren

Xeal
Otto-Normal-Poster


Beiträge: 86


Erst mal danke
Freut mich dass ich bei euch nicht in Vergessenheit geraten bin :P
Erstmal an Nista: Wo findets du
1: newsid=%7BID%7D
???
So und nun zum Code:
Also das newssystem ist Aufgebaut aus wenigen Dateien:
news_admin.php
news_config.php
news.php
eine Template-Datei.
Ich denke die news_admin spielt hier keine Rolle, die lass ich also mal weg.
news_config.php
<?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.

*/



// mysql Verbindung aufbauen, Datenbank wählen
$verbindung = mysql_connect($db['Server'],$db['User'],$db['Pass']) or die ("Keine Verbindung möglich");
mysql_select_db($db['Datenbank']) or die ("Datenbank existiert nicht");

mysql_query("CREATE TABLE IF NOT EXISTS `".$table_news."` (
id int(6) unsigned NOT NULL auto_increment,
uid int(6) NOT NULL default '0',
titel varchar(100) NOT NULL default '',
text text NOT NULL,
time varchar(15) NOT NULL default '',
PRIMARY KEY (id)
) TYPE=MyISAM COMMENT='powered by ilch.de'");

mysql_query("CREATE TABLE IF NOT EXISTS `".$table_news_koms."` (
`id` int(10) unsigned NOT NULL auto_increment,
`uid` int(10) NOT NULL default '0',
`name` varchar(100) NOT NULL default '',
`text` tinytext NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM COMMENT='powered by ilch.de'");


function parse($req,$file,$echo = true) {

$f = 'ilch_tpl/'.$file.'.htm';
$fp = fopen($f, "r");
$tp = fread($fp, filesize($f));
if (is_array($req)){
foreach($req as $var => $key) {
$tp = str_replace('{'.$var.'}',$key,$tp);
}
}
if ($echo == true) {
echo $tp;
} else {
return $tp;
}
}

function makeSites ( $page , $limit, $tabelle ) {

$maxpage = '';
$resultID = @mysql_query("SELECT COUNT(ID) FROM `".$tabelle."`");
$total = @mysql_result($resultID,0);
if ($limit < $total) {
$maxpage = $total / $limit;
if (is_double($maxpage)) {
$maxpage = ceil($maxpage);
}
$MPL = '[ ';
for($i=1; $i <= $maxpage; $i++) {
if($i == $page) {
$MPL .= $i;
} else {
$MPL .= '<a href="'.$PHP_SELF.'?page='.$i.'">'.$i.'</a>';
}
if ($i != $maxpage) {
$MPL .= ' | ';
}
}
$MPL .= ' ]';
}
return $MPL;

}
?>


news.php
<?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;
}
.Stil9 {font-size: 16px;
font-weight: bold;
}
-->
</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('
','',$txt);
$txt = str_replace('<br />','',$txt);
$txt = str_replace("\n",'
',$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",'
',$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="news.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
}


}

?>


Template
<style type="text/css">
<!--
.Stil19 {font-size: 9px; font-family: Verdana, Arial, Helvetica, sans-serif;}
.Stil22 {font-family: Verdana, Arial, Helvetica, sans-serif}
.Stil27 {
font-size: 12px;
font-style: italic;
}
-->
</style>
<table width="553" border="0" cellspacing="0" cellpadding="0">
<tr class="Stil19">
<td width="259"><strong><a href="index.php?action=news&newsid=%7BID%7D" class="Stil27">{NAME}</a></strong></td>
<td width="294"><div align="right" class="Stil22">{DATE} </div></td>
</tr>
<tr class="Stil19">
<td colspan="2"> </td>
</tr>
<tr class="Stil19">
<td colspan="2">{TEXT}</td>
</tr>
<tr class="Stil19">
<td colspan="2"><div align="right"><span class="Stil22">»<a href="index.php?action=news&newsid=%7BID%7D">{KOMS} Kommentare</a> «</span></div></td>
</tr>
<tr class="Stil19">
<td colspan="2"><p align="right" class="Stil22"> </p></td>
</tr>
<tr>
<td colspan="2"><img src="newstrennung.jpg" width="553" height="2"></td>
</tr>
</table>



Sorry für den vielen code aber ich wusste nicht genau was ich posten soll.
Danke für eure Bemühungen

---
www.xeal.de : Bald in der Sommerversion !

Diese Nachricht wurde geändert von: Xeal
  Profil   E-Mail   Editieren   Zitieren

Xeal
Otto-Normal-Poster


Beiträge: 86


Ok.
Ich hab jetzt nochmal das alte Template genommen, damit gehts.
D.h. Der Fehler muss beim Template liegen.


---
www.xeal.de : Bald in der Sommerversion !

  Profil   E-Mail   Editieren   Zitieren

nisita
Posting-Schinder


Beiträge: 553


kann dir auch sagen wo...

1:
<a href="index.php?action=news&newsid=%7BID%7D">


und es heißt aber in wirklichkeit:

1:
<a href="news.php?newsid={ID}">


da hat wohl irgendein editoro der so da die "{" / "}" verhauen
mfg
nisita

---
"Wir sollten lernen, uns allmählich vom Überfluss zu befreien, um zur Einfachheit unseres eigenen Wesens vorzudringen." Jean Gastaldi

  Profil   Editieren   Zitieren

Xeal
Otto-Normal-Poster


Beiträge: 86


Habs eben auch grad gemerkt
Funzt !
Danke nochma !

---
www.xeal.de : Bald in der Sommerversion !

  Profil   E-Mail   Editieren   Zitieren
 

Antworten
Nach oben