2009-07-28 10 views
1

mysqlデータベースからショッピングカート(jcart)にアイテムを動的に配置しようとしています。私は3つのdivを持つページを持っており、すべてがショッピングカートのフォームを含んでいます(下のフォームコード)。私はデータベースから情報を取得し、フォームに配置しています。idsで動的にmysql情報をdivに配置する

最初のdivは情報を正しく取得していますが、2番目のdivは3番目のdivと全く同じものを表示します(私はPHPループから推測します)。私は、各フォームがデータベースからの対応するIDを入力するようにしたいので、各divは異なります。この場合私は3つのウェブサイトを持っています1.Leftlane News 2. MotorAuthority 3.データベースのAutoblog。私は同じ名前のサイトごとに別々のデータベースを持っています。これらのデータベースでは、各サイトのショッピングカートフォームに情報を入力しています。

問題は、対応するdiv情報を表示できないことです。 IDや何かから情報を取得して表示する方法はありますか?1.レフトレーンニュース - >レフトレーンニュースカート情報2.モーターオーソリティ - >モーターオーソリティカート情報3.オートブログ - > Autoblogカート情報

<?php 

function outputListingsTable() 
{ 
    include("property.php"); 

    $mysql = new mysqli('localhost', 'root', 'root', 'ajax_demo') or die('you\'re dead'); 
    $result = $mysql->query("SELECT * FROM explore") or die($mysql->error); 

if($result) 
{ 
     echo "<div id=\"MyContentArea\"> \n"; 
           while($row = $result->fetch_object()) 
           { 
             $id = $row->id; 
        global $siteName; 
             $siteName = $row->site_name; 
        global $siteDescription; 
             $siteDescription = $row->site_description; 
        global $siteURL; 
             $siteURL = $row->site_url; 
        global $sitePrice; 
             $sitePrice = $row->site_price; 

             echo "<div id=\"main-info-" .$id. "\" class=\"maini\"> \n"; 
             echo " " . $siteName . " \n"; 
             echo " " . $siteURL . " \n"; 
             echo " <a id=\"link-" . $id . "\" class=\"more-info-link\" href=\"#\">More info</a> \n";  
             echo "</div> \n"; 

         echo "<div id=\"more-info-" .$id. "\" class=\"mi\"> \n"; 
           echo "    <span class=\"description\">" . $siteDescription . "</span> \n"; 
         echo "<div id=\"buy-info-" .$id. "\" class=\"mib\"> \n"; 
           echo "    <span class=\"buy\">This is where you can purchase available property.</span> \n"; 
         echo " </div> \n"; 

         echo " <a href=\"http://localhost:8888/mainsite2/detail.php?id=$id\">More Details</a>"; 

         echo "<div id=\"buy-info-" .$id. "\" class=\"mib\"> \n"; 



            echo" <form method=\"post\" action=\"\" class=\"jcart\">"; 
            echo"  <fieldset>"; 
            echo"   <input type=\"hidden\" name=\"my-item-id\" value=\"" .$idp. "\" />"; 
            echo"   <input type=\"hidden\" name=\"my-item-name\" value=\"" .$adType. "\" />"; 
            echo"   <input type=\"hidden\" name=\"my-item-price\" value=\"" .$adPrice. "\" />"; 

            echo"   <ul>"; 
            echo"    <li><strong>" .$adType. "</strong></li>"; 

            echo"    <li>Price: $" .$adPrice. "</li>"; 
            echo"    <li>"; 
            echo"     <label>Qty: <input type=\"text\" name=\"my-item-qty\" value=\"1\" size=\"3\" /></label>"; 
            echo"    </li>"; 
            echo"   </ul>"; 

            echo"   <input type=\"submit\" name=\"my-add-button\" value=\"add to cart\" class=\"button\" />"; 
            echo"  </fieldset>";      
            echo" </form>"; 




         echo " </div> \n"; 

         echo " </div> \n"; 
           } 
echo "</div> \n";   

    } 

} 

?> 

そして、ここでは私がleftlaneのために上記に含めていますproperty.phpページです:

<?php 
    $mysql = new mysqli('localhost', 'root', 'root', 'leftlane_news') or die('you\'re dead'); 
    $result = $mysql->query("SELECT * FROM property") or die($mysql->error); 

if($result) 
{ 
           while($row = $result->fetch_object()) 
           { 
             $idp = $row->property_id;     
             $adType = $row->ad_type;      
             $adAvail = $row->ad_avail;    
             $adSold = $row->ad_sold; 
             $adPrice = $row->ad_price; 
           } 
    } 
?> 

すべてのヘルプここ

は一緒にすべてを置くメインのPHPファイルであります素晴らしいことだ。ありがとうございました。

答えて

1

同じループ内に3つのdivがすべて作成されているようです。つまり、すべて同じデータが与えられます。私は非常にあなたが持っている細目のまわりで私の頭を取得することはできませんが、あなたはおそらく、より密接に似ているループになるでしょう:結果セットの行ごとにDIVを作成します

<?php 
while($row = $result->fetchObject()) 
{ 
    echo '<div id="' . $row->data . '" >'; 
    //more stuff 
    echo '</div>'; 
} 

を。

関連する問題