ilch Forum » Allgemein » HTML, PHP, SQL,... » News & Clannews

Geschlossen
  1. #1
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    Hey Leute,

    ich würde gerne 2 x News auf meiner HP haben!

    Einmal rund um die Welt und einmal für mein Clan.

    Nun würde ich gerne wissen wie ich das mache.

    Ich würde bei Main Navi -> News die About the World Nes hinmachen da müsste ich dann ja nichts ändern...

    Nun soll unten Bei Clan Navi noch Clannews hin.

    Weiß jemand wie? Pic würde ich selber hinbekommen...


    MfG f4xd


    verwendete ilchClan Version: 1.1

    betroffene Homepage: f4xd.ohost.de
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Du erstellst die News einfach immer in 2 verschiedenen Kategorien, dann kannst du in der news.php bzw. einer Kopie davon in der SQL Abfrage, die Kategorie beschränken.
    Ca. Zeile 100+
        $abf = "SELECT
          a.news_title as title,
          a.news_id as id,
          DATE_FORMAT(a.news_time,'%d. %m. %Y') as datum,
          DATE_FORMAT(a.news_time,'%W') as dayofweek,
          a.news_kat as kate,
          a.news_text as text,
          b.name as username
        FROM prefix_news as a
        LEFT JOIN prefix_user as b ON a.user_id = b.id
        WHERE ".$_SESSION['authright']." <= a.news_recht
           OR a.news_recht = 0
        ORDER BY news_time DESC 
        LIMIT ".$anfang.",".$limit;


    |
    |
    V

        $abf = "SELECT
          a.news_title as title,
          a.news_id as id,
          DATE_FORMAT(a.news_time,'%d. %m. %Y') as datum,
          DATE_FORMAT(a.news_time,'%W') as dayofweek,
          a.news_kat as kate,
          a.news_text as text,
          b.name as username
        FROM prefix_news as a
        LEFT JOIN prefix_user as b ON a.user_id = b.id
        WHERE (".$_SESSION['authright']." <= a.news_recht
           OR a.news_recht = 0) AND kate = 'KATEGORIENAME'
        ORDER BY news_time DESC 
        LIMIT ".$anfang.",".$limit;


    weiter solltest du noch ein dann noch alle verweise auf news.php durch den neuen Dateinamen ersetzen, und am besten auch das Template kopieren und die links darin anpassen.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    Also jetzt nochmal für den Dummen zunge

    Also ich mache jetzt eine Kopie der news.php und ersetze das:

    $abf = "SELECT
          a.news_title as title,
          a.news_id as id,
          DATE_FORMAT(a.news_time,'%d. %m. %Y') as datum,
          DATE_FORMAT(a.news_time,'%W') as dayofweek,
          a.news_kat as kate,
          a.news_text as text,
          b.name as username
        FROM prefix_news as a
        LEFT JOIN prefix_user as b ON a.user_id = b.id
        WHERE ".$_SESSION['authright']." <= a.news_recht
           OR a.news_recht = 0
        ORDER BY news_time DESC
        LIMIT ".$anfang.",".$limit;


    durch das:

    $abf = "SELECT
          a.news_title as title,
          a.news_id as id,
          DATE_FORMAT(a.news_time,'%d. %m. %Y') as datum,
          DATE_FORMAT(a.news_time,'%W') as dayofweek,
          a.news_kat as kate,
          a.news_text as text,
          b.name as username
        FROM prefix_news as a
        LEFT JOIN prefix_user as b ON a.user_id = b.id
        WHERE (".$_SESSION['authright']." <= a.news_recht
           OR a.news_recht = 0) AND kate = 'KATEGORIENAME'
        ORDER BY news_time DESC
        LIMIT ".$anfang.",".$limit;


    ???

    Bei Kategoriename könnte ich dann Clannews hinschreiben?

    Und kann ich die Kopie der news.php clannews.php nennen?

    MfG f4xd
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Ja, aber dann noch nach allen vorkommen von ?news suchen und durch ?clannews ersetzen.
    Vor allem im kopierten Template news.htm im templates Ordern, du musst dann in der clannews.htm noch $tpl = new tpl('clannews'); benutzen.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    Also ich habe jetzt news.php kopiert und eine clannews.php erstellt.

    Dadrinne habe ich das:

    $abf = "SELECT
          a.news_title as title,
          a.news_id as id,
          DATE_FORMAT(a.news_time,'%d. %m. %Y') as datum,
          DATE_FORMAT(a.news_time,'%W') as dayofweek,
          a.news_kat as kate,
          a.news_text as text,
          b.name as username
        FROM prefix_news as a
        LEFT JOIN prefix_user as b ON a.user_id = b.id
        WHERE ".$_SESSION['authright']." <= a.news_recht
           OR a.news_recht = 0
        ORDER BY news_time DESC
        LIMIT ".$anfang.",".$limit;


    durch das:

    $abf = "SELECT
          a.news_title as title,
          a.news_id as id,
          DATE_FORMAT(a.news_time,'%d. %m. %Y') as datum,
          DATE_FORMAT(a.news_time,'%W') as dayofweek,
          a.news_kat as kate,
          a.news_text as text,
          b.name as username
        FROM prefix_news as a
        LEFT JOIN prefix_user as b ON a.user_id = b.id
        WHERE (".$_SESSION['authright']." <= a.news_recht
           OR a.news_recht = 0) AND kate = 'Clannews'
        ORDER BY news_time DESC
        LIMIT ".$anfang.",".$limit;


    ersetzt!

    Dann habe ich einen Kopie von news.htm erstellt und diese clannews.htm genannt. Dann habe ich alle sich darin befindenden ?news in ?clannews umbenannt.

    Doch wo muss jetzt
    $tpl = new tpl('clannews');
    hin?

    Ich habe das jetzt schon in meiner Index.htm eingebunden, so dass rechts unten Clannews in der Navigation ist. Doch wenn ich jetzt darauf klicke steht in der Seite
    Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /usr/export/www/hosting/f4xd/include/includes/func/db/mysql.php on line 48


    Was habe ich vergessen? Und wie trage ich jetzt News da ein, es gibt ja keine neue Rubrik im Adminmenü...


    MfG f4xd
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Das mit dem tpl steht auch in der php Datei, allerdings ist anscheinend die Abfrage so doch noch nicht richtig, mach mal stat kate a.news_kat
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    Also, ich habe jetzt das jetzt so in der news.php:

    [...]    $abf = "SELECT
          	a.news_title as title,
          	a.news_id as id,
          	DATE_FORMAT(a.news_time,'%d. %m. %Y') as datum,
                DATE_FORMAT(a.news_time,'%W') as dayofweek,
          	a.news_kat as kate,
          	a.news_text as text,
          	b.name as username
        FROM prefix_news as a
        LEFT JOIN prefix_user as b ON a.user_id = b.id
        WHERE (".$_SESSION['authright']." <= a.news_recht
           OR a.news_recht = 0) AND a.news_kat = 'Clannews'
        ORDER BY news_time DESC
        LIMIT ".$anfang.",".$limit;    
        #echo '<pre>'.$abf.'</pre>';
    [...]


    Also vor 'Clannews' Steht jetzt a.news_kat =

    Jetzt ist auch
    Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /usr/export/www/hosting/f4xd/include/includes/func/db/mysql.php on line 48
    weg...

    Doch wie schreibe ich jetzt etwas da hinein?

    Ich habe jetzt einmal eine Newsmeldung erstellt mit dem Kategorienamen Clannews. Jetzt steht es da zwar, aber auch noch bei den anderen News...

    Und könnte ich auch das machen:
    a.news_recht
           OR a.news_recht = 0) AND a.news_kat = 'Clannews'; 'Membernews'; 'Servernews';


    Noch so eine Frage nebenbei, wie stellt man die Schriftgröße der Page-Überschriften ein. Also unterm Header steht News und darunter sind dann die Neuigkeiten. Weil diese Überschrigten und auch die Textbuttons Login und Regist usw.. sind auf einmal verkleinert.

    MfG f4xd


    Zuletzt modifiziert von f4xd am 04.05.2007 - 16:20:30
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Stimmt, wenn du es in der anderen nicht haben willst, musst du da das gleiche machen, aber nicht = (gleich) sondern != (ungleich) benutzen, also nur die Abfrage verändern.
    Wenn du mehrere nutzen willst, geht das nicht mit so hintereinandergeschreibe, sondern
    AND ( a.news_kat = 'Clannews' OR a.news_kat = 'Membernews')
    äquivalent dazu das ungleich.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    Hmmm... also das mit dem hintereinanderschreiben geht...
    Sieht jetzt so aus:
    FROM prefix_news as a
        LEFT JOIN prefix_user as b ON a.user_id = b.id
        WHERE (".$_SESSION['authright']." <= a.news_recht
           OR a.news_recht = 0) AND a.news_kat = 'Clannews' OR a.news_kat = 'Membernews' OR a.news_kat = 'Servernews'  
        ORDER BY news_time DESC
        LIMIT ".$anfang.",".$limit;


    Aber wenn ich jetzt vor die Gleichheitszeichen ein ! mache werden bei Clannews wieder alle angezeigt. Und Ich habe schon eine Neuigkeit in der Kategorie Membernews, die auch bei Clannews angezeigt wird, jedoch überschneiden sich Name und Bild der Neuigkeit.

    Schaus dir an: f4xd.f4.ohost.de/index.php?clannews

    MfG f4xd
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Stimmt bei dem ungleich musst du es mit AND verbinden nicht mit OR.

    Mit dem hintereinander schreiben meinte ich das
    AND a.news_kat = 'Clannews'; 'Membernews'; 'Servernews';
    , das soll funktionieren?
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    Also so:

    OR a.news_recht = 0) AND a.news_kat != 'Clannews' AND a.news_kat != 'Membernews' AND a.news_kat != 'Servernews'


    ???

    Ich habe echt keine Ahnung...
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Genau, geht es nicht oder wolltest du es nicht ausprobieren?
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    Hmm.... ich habe es so
    OR a.news_recht = 0) AND a.news_kat != 'Clannews' AND a.news_kat != 'Membernews' AND a.news_kat != 'Servernews'
    gemacht. Jetzt werden aber alle Neuigkeiten die bei News stehen auch bei Clannews angezeigt!

    Außerdem fehlt bei Clannews die "ganzen Artikel anzeigen" Funktion und der Titel überschneidet sich mit dem News-Banner. Außerdem ist bei Clannews die Uhrzeit da, bei News nicht.


    Zuletzt modifiziert von f4xd am 04.05.2007 - 19:17:39
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Das liegt daran, dass du keine Klammer darum gemacht hast, siehe mein Beispiel.
    Du hast wahrscheinlich ein Template direkt in deinem design Ordner, was dem anderen vorgezogen wird, wenn du das nicht willst, kannst du es löschen bzw. umbenennen oder als Grundlage für das andere Template benutzen, wenn es dir besser gefällt.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    Kaum habe ich die Klammern rum gemacht, kommt das wieder:
    Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /usr/export/www/hosting/f4xd/include/includes/func/db/mysql.php on line 48


    MfG f4xd
    0 Mitglieder finden den Beitrag gut.
  16. #16
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Dann hast du sie wahrscheinlich falsch drum gemacht, ich meinte
    OR a.news_recht = 0) AND (a.news_kat = 'Clannews' OR a.news_kat = 'Membernews' OR a.news_kat = 'Servernews')
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  17. #17
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    Aber auch so:
    OR a.news_recht = 0) AND (a.news_kat = 'Clannews' OR a.news_kat = 'Membernews' OR a.news_kat = 'Servernews')


    funktioniert es nur wenn ich die Ausrufezeichen vor den Gleichheitszeichnen wegnehme...

    Mit != werden wieder alle angezeigt.

    Ich hab jetzt erstmal die ! weggelassen.

    Aber Vergleich mal News mit Clannews. Clannews ist fehlerhaft...

    News: f4xd.f4.ohost.de/index.php?news
    Clannews: f4xd.f4.ohost.de/index.php?clannews


    Zuletzt modifiziert von f4xd am 05.05.2007 - 10:31:53
    0 Mitglieder finden den Beitrag gut.
  18. #18
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Also die Klammern brauchst du nur bei der clannews.php, was ja anscheinend auch geht, bei der news.php ohne Klammern und mit != (ungleich), das du ja die nicht angezeigt haben willst, in der clannews.php mit = (gleich) dort willst du sie angezeigt haben zwinker
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  19. #19
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    Etwa so? Clannews.php
        WHERE (".$_SESSION['authright']." <= a.news_recht
           OR a.news_recht = 0) AND (a.news_kat = 'Clannews' OR a.news_kat = 'Membernews' OR a.news_kat = 'Servernews')
        ORDER BY news_time DESC


    News.php
        WHERE ".$_SESSION['authright']." <= a.news_recht
           OR a.news_recht = 0 AND a.news_kat != 'Clannews' OR a.news_kat != 'Membernews' OR a.news_kat != 'Servernews'
        ORDER BY news_time DESC


    Funktioniert nämlich nicht.
    0 Mitglieder finden den Beitrag gut.
  20. #20
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    news.php
    WHERE (".$_SESSION['authright']." <= a.news_recht
           OR a.news_recht = 0) AND a.news_kat != 'Clannews' AND a.news_kat != 'Membernews' AND a.news_kat != 'Servernews'
        ORDER BY news_time DESC


    das andere sollte stimmen.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  21. #21
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    Warning: main(include/includes/config.php) [function.main]: failed to open stream: No such file or directory in /usr/export/www/hosting/f4xd/index.php on line 10
    
    Fatal error: main() [function.require]: Failed opening required 'include/includes/config.php' (include_path='.:') in /usr/export/www/hosting/f4xd/index.php on line 10


    Jetzt geht die HP gar net mehr...


    EDIT: Habe ausversehen /includes in /templates verschoben. ^^


    Zuletzt modifiziert von f4xd am 05.05.2007 - 12:34:59
    0 Mitglieder finden den Beitrag gut.
  22. #22
    User Pic
    f4xd Mitglied
    Registriert seit
    02.03.2007
    Beiträge
    17
    Beitragswertungen
    0 Beitragspunkte
    So jetzt funktioniert alles auch mit News und Clannews! Muss ich eig. news_rss.htm und news_atom.htm, auch kopieren? also zu clannews_rss.htm und clannews_atom.htm?

    Und Vergleich mal f4xd.f4.ohost.de/index.php?clannews mit
    f4xd.f4.ohost.de/index.php?news. Bei News fehlt das Datum und die Newsüberschrift überschneidet sich nicht mit dem Newsbanner. Bei Clannews ist die Uhrzeit zwar da, jedoch überschneidet sich die Newsüberschrift mit dem Newsbanner.

    MfG f4xd
    0 Mitglieder finden den Beitrag gut.
  23. #23
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Wie oben schon beschrieben, du benutzt ein Design mit eigenen news Template (designs/atrox_design/templates/news.htm) die wird bei der news.php benutzt, du musst also diese Datei als Grundlage benutzen, wenn du es so haben willst.

    Ich hab das Template etwas angepasst, weil mein Clan seit neustem auch dieses Design benutzt, siehe www.dynamicgamerz.de wenn dir das gefällt, kannst du es unter www.dynamicgamerz.de/include/designs/atrox_design/templates/news.htm
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten