Swaroop Nagendra
Swaroop Nagendra

Reputation: 605

Multiple jquery-ui id's applying to values reurned from database

My code has a loop like this:

for($i = 0; $i < $num_of_results; $i++){
    $row = $result -> fetch_assoc();
    echo "<div id='books'>";
    echo "<h4>".($i+1).". Title: </h4>";
    echo "<div> <p>".htmlspecialchars(stripslashes($row['title'])) ."</p> </div>";
    echo "<h4>Author: </h4>";
    echo "<div> <p>".stripslashes($row['author'])."</p></div>";
    echo "</div>";
}

and a jquery-ui accordion call like this:

$(document).ready(function(){
    for(var i = 0; i < 3; i++) 
    // i is 3 because I am assuming database returns 3 results

    $('#books'+i).accordion();             
});

Now I need accordion for every row that database returns.

So i did something like this in echo statement in the php code:

echo "<div id='books'".$i.">"

But it did not work. How should I overcome this?

Upvotes: 0

Views: 40

Answers (2)

correct code is

echo "<div id='books".$i."'>"

Upvotes: 0

zkanoca
zkanoca

Reputation: 9928

You should place single quote after $i:

echo "<div id='books".$i."'>";

Upvotes: 1

Related Questions