close× Call Us +49 (1805) 01 29 59

Datalus
Thread Author: mclol
Thread ID: 2525
Thread Info
Es gibt 7 Beiträge zu diesem Thema, und es wurde 2016 mal angesehen.
Wer ist hier? 1 Gäste
 Thema drucken
Artikel
mclol
Hallo,

ich würde gerne die letzten Artikel genauso auf der Startseite anzeigen wie die News.
Habe also einfach mal versucht die Artikel an die news.php anzupassen:



   $result = dbquery(
      "SELECT ta.*,tac.*, tu.user_id,user_name FROM ".DB_ARTICLES." ta
      INNER JOIN ".DB_ARTICLE_CATS." tac ON ta.article_cat=tac.article_cat_id
      LEFT JOIN ".DB_USERS." tu ON ta.article_name=tu.user_id
      WHERE ".groupaccess('article_cat_access')." AND article_id='".$_GET['article_id']."' AND article_draft='0'"
   );

   if (dbrows($result)) {
      require_once INCLUDES."comments_include.php";
      require_once INCLUDES."ratings_include.php";
      $data = dbarray($result);
      if (!isset($_GET['rowstart']) || !isnum($_GET['rowstart'])) { $_GET['rowstart'] = 0; }
      if ($_GET['rowstart'] == 0) { $result = dbquery("UPDATE ".DB_ARTICLES." SET article_reads=article_reads+1 WHERE article_id='".$_GET['article_id']."'"); }
      $article = stripslashes($data['article_article']);
      if (preg_match('/<--PAGEBREAK-->/', $article)) {
         $article = explode("<--PAGEBREAK-->", $article);
      } else {
         $article = explode("<!-- pagebreak -->", $article);
      }
      $pagecount = count($article);
      $article_subject = stripslashes($data['article_subject']);


      $article_info = array(
         "article_id" => $data['article_id'],
         "user_id" => $data['user_id'],
         "user_name" => $data['user_name'],
         "article_date" => $data['article_datestamp'],
         "article_breaks" => $data['article_breaks'],
         "article_comments" => dbcount("(comment_id)", DB_COMMENTS, "comment_type='A' AND comment_item_id='".$data['article_id']."'"),
         "article_reads" => $data['article_reads'],
         "article_allow_comments" => $data['article_allow_comments']
      );


         opentable($locale['global_077']);
         echo "<table cellpadding='0' cellspacing='0' style='width:100%'>\n<tr>\n<td colspan='3' style='width:100%'>\n";
         echo $article_[0];
         echo "</td>\n</tr>\n<tr>\n<td style='width:50%;vertical-align:top;'>\n";
         echo $article_[1];
         echo "</td>\n<td style='width:10px'><img src='".get_image("blank")."' alt='' width='10' height='1' /></td>\n<td style='width:50%;vertical-align:top;'>\n";
         echo $article_[2];
         echo "</td>\n</tr>\n</table>\n";
         closetable();
}


Leider kommt immer eine Fehlermeldung, die die article_id betrifft. Könnte mir da jemand helfen?

mfg
 
SC-Ad-Bot
 
emblinux
Wie lautet denn die Fehlermeldung?

Ausserdem frage ich mich, wozu du diese ID benötigst. Denn für die Übersicht wie bei den News, wird diese nicht benötigt. Nur dann, wenn man auf Readmore klickt, erst dann benötigt man diese ID, um mehr zu diesen einen Artikel zu lesen.
Das Lernen ist wie ein Meer ohne Ufer. Konfuzius

Alles wird Gut!

KEIN Support per Mail, ICQ oder PN !
www.heiseclan.de/fusion/sig.gif

www.heiseclan.de/geosig.gif
 
mclol
hi,

danke für die Antwort.

Fehlermeldung:


Notice: Undefined index: article_id in /var/www/web0/html/index.php  on line 201


Betrifft wohl die DB Abfrage. Wobei das schon ganz gut wäre, wenn man später auch auf "mehr lesen" klicken könnte.
 
emblinux
Dann schau dir einfach nochmal genau an, wie es bei den News gemacht wird. Denn eigentlich ist die Tabellen-Struktur für beide Bereiche sehr ähnlich.
Das Lernen ist wie ein Meer ohne Ufer. Konfuzius

Alles wird Gut!

KEIN Support per Mail, ICQ oder PN !
www.heiseclan.de/fusion/sig.gif

www.heiseclan.de/geosig.gif
 
mclol
ja, das habe ich schon gemacht. aber letztendlich führt das ins nichts. könntest du mir da bei der struktur unter die arme greifen?^^

lg
 
mclol
hi,

ich habs jetzt mal so versucht:






      $result = dbquery(
         "SELECT tn.*, tc.*, user_id, user_name FROM ".DB_ARTICLES." tn
         LEFT JOIN ".DB_USERS." tu ON tn.article_name=tu.user_id
         LEFT JOIN ".DB_NEWS_CATS." tc ON tn.article_cat=tc.article_cat_id
         WHERE ".groupaccess('article_visibility')."
         ORDER BY news_sticky DESC, article_datestamp DESC LIMIT, 2"
      );

   


Leider kommt noch folgender Fehler:


You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' 2' at line 5 


Wo liegt denn da der Fehler?

lg
 
emblinux
Bei der Anpassung der SQL-Anweisung hast du einen Fehler gemacht. Bei LIMIT hast du noch ein Komma vor der 2.

Limit erwartet mindestens 1 Parameter maximal 2.

Wenn Limit 2 -> heißt das, du bekommst nur 2 Werte zurückgegeben.

Wenn Limit 10,2 -> heißt das, du bekommst 2 Werte zurückgegeben, jedoch mit dem Offset 10 (rowstart), also die Ergebnisse der Reihen 11 und 12.

Also musst du jetzt schauen, wie du die SQL-Anweisung anpassen musst.
Das Lernen ist wie ein Meer ohne Ufer. Konfuzius

Alles wird Gut!

KEIN Support per Mail, ICQ oder PN !
www.heiseclan.de/fusion/sig.gif

www.heiseclan.de/geosig.gif
 
Springe ins Forum:

 Ähnliche Themen 

TEST
Thema Forum Antworten Letzter Beitrag
Artikel anteasern Allgemeine Support Fragen 2 08.11.2012 00000011 17:20
buttons und links für news & artikel Allgemeine Support Fragen 4 25.02.2011 00000002 06:57
News / Artikel / Fotos freischalten Allgemeine Support Fragen 2 24.02.2011 00000002 13:27
Artikel Slideshow... Infusionen 2 31.08.2010 00000008 16:53
Bilder/Artikel Wechsel Allgemeine Diskussionen 3 18.01.2010 00000001 17:22
Heiseclan