JOIN problem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • JOIN problem

    hi!

    versuch mich grad an einem forum. ich hab 2 tabellen für die beiträge, eine in der die threads samt id und "locked"-status eingetragen sind und eine zweite in der die postings samt thread_id stehen.

    ich würde gerne für jeden thread prüfen, ob "locked" den wert 0 oder 1 hat.

    hab mir folgendes SQL statement zusammengebastelt:
    PHP-Code:
    SELECT `locked`
    FROM `threads`
    LEFT JOIN `postings`
    ON (`threads`.`id` = `thread_id`)
    WHERE `thread_id` = 
    mein problem besteht nun darin, dass er mir sämtliche datensätze liefert, in denen die thread-id vorkommt, d.h. befinden sich in einem thread 5 beiträge, wird mir 5 mal der "locked"-status zurückgegeben. man könnte das zwar mit LIMIT = 1 einschränken, denke aber da gäbs durchaus sauberere lösungen.

    kann mir da bitte jemand unter die arme greifen?

    danke schon mal im voraus!

  • #2
    huch, ich habs. peinlich.
    PHP-Code:
    SELECT `locked`
    FROM `threads`, `postings`
    WHERE `threads`.`id` = `thread_id`
    AND `
    postings`.`id` = 
    wär eh so einfach.

    Kommentar


    • #3
      Re: JOIN problem

      Original geschrieben von php_rookie
      hi!

      versuch mich grad an einem forum. ich hab 2 tabellen für die beiträge, eine in der die threads samt id und "locked"-status eingetragen sind und eine zweite in der die postings samt thread_id stehen.

      Wenn ich Dir mal nen Tipp geben darf ( für die datenbank ):

      Brauchst du minimal 5 tabellen ( weiß ja nicht wie du das genau machen willst?! ) 1. usertab.

      Mods:

      MOD_ID
      MOD_Ordnung (foren id )
      MOD_Nick_ID


      Foren:

      Foren_ID
      Foren_Name
      Foren_Beschreibung
      Foren_Zugang ( evtl. falls du forum hast, in der nur MODs o.ä. lesen/schreiben dürfen)
      Foren_Ordnung ( ID des threads)
      Foren_Autor_ID (id des users aus der user tabelle )
      Foren_Zeit
      Foren_IP
      Foren_Browser
      Foren_OpenNT ( neuen thread aufmachrecht )


      Threads:

      Thread_ID
      Thread_Name
      Thread_Zugang ( rechte )
      Thread_Ordnung (forum ID )
      Thread_Nick_ID ( eröffner )
      Thread_IP
      Thread_Browser
      Thread_Pin ( falls du pinnen willst ? )
      Thread_Closed ( geöffnet/geschlossen)

      Posts:

      Post_ID
      Post_Zugang ( rechte )
      Post_Ordnung ( thread id )
      Post_Nick_ID
      Post_Beitrag
      Post_Zeit
      Post_IP
      Post_Browser
      Post_Pin ( pinnen? )

      hab grad selbst ein forum hinter mir.. klappt gut, mit JOINs funktioniert alles supi viel spaß

      Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
      sondern mit den Augen das Manual zu lesen.

      Kommentar


      • #4
        danke fürn tipp, das eine oder andere kann ich sicher verwenden. hab noch zusätzlich eine eigene tabelle RIGHTS, in der ich die rechte der einzelnen rollen individuell belegen kann. somit bin ich nicht nur auf die rollen user/mod/admin beschränkt.

        Kommentar

        Lädt...
        X