Neden bu MySQL çalışmak değil Bildirimi Üyelik?

2 Cevap php

İşte benim kod:

$query2 = mysql_query("SELECT * FROM categories WHERE parent = $id JOIN SELECT * FROM posts WHERE main_nav_page = '$idTwo'");

                    while ($row2 = mysql_fetch_assoc($query2)) {
                        $id   = $row2['id'];
                        $name = $row2['name'];
                        $slug = $row2['slug'];
                        $subMenuOrder = $row2['sub_menu_order'];

                        echo "<tr>\n";
                        echo "<td>&nbsp; -- $name</td>\n";
                        echo "</tr>\n";
                    }

Benim sözdizimi yanlış mı?

EDIT:

hata iletisi:

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/studentw/public_html/new_nav.php on line 30

2 Cevap

Bunun yerine muhtemelen daha fazla gibi bir şey istiyorum:

SELECT * 
FROM 
       categories c 
    INNER JOIN 
       posts p ON c.categoryid = p.categoryid 
WHERE 
       c.parent = $id 
       AND p.main_nav_page = '$idTwo'; 

Tablolar oldukça seçme tablolara göre, birleştirilen unutmayın. Ayrıca, katılır FROM fıkrasında belirtilmiştir.

Bu deneyin:

$results = mysql_query("query here") or die(mysql_error());

Ben küçük bir yazım hatası olduğunu düşünüyorum. Eğer WHERE parent-fıkrasında "$ id" etrafında tek tırnak ('') kaçırmış gibi görünüyor. Bu böyle olmalı, ben tahmin ediyorum:

SELECT * FROM categories WHERE parent = '$id' ...