Reputation: 3
<?php
foreach (iscupaj_viceve() as $id => $glasanje){
$result = mysql_query("SELECT * FROM vicevi WHERE id = $id");
while ($row = mysql_fetch_array($query)) {
echo "<h2><center>".$row['Title']."</h2>";
echo "<div id='linkovi1'>" .nl2br($row["VicText"]). "<br></div>";
}
?>
<p>
<a href="?glasanje=gore&id=<?php echo $id; ?>"><img src="../images/plus_sign.png" width="29" height="29"></a>
<a href="?glasanje=dolje&id=<?php echo $id; ?>"><img src="../images/minus_sign.png" width="29" height="29"></a>
Ukupno glasova : [
<?php
include 'core/db/connect.php';
// Check connection
$result = mysql_query("SELECT glasanje FROM vicevi WHERE id = $id");
while($row = mysql_fetch_array($result))
{
echo nl2br($row['glasanje']);
}
?>]
</p>
<?php
}
?>
And this is my function
function iscupaj_viceve(){
$sql = "SELECT id, VicText, glasanje FROM vicevi ORDER BY id DESC LIMIT 0, 10";
$rezultati = mysql_query($sql);
$glasanje = array();
while (($row = mysql_fetch_assoc($rezultati)) !== false){
$rezultati[$row['id']] = $row['VicText'];
}
return $rezultati;
}
Browser prints this error message:
Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\glasanje\index.php on line 111
But i can't seem to find a way to solve this problem :S Help?
Upvotes: 0
Views: 6002
Reputation: 48897
Your function is overwriting $rezultati
. I would suggest rewriting it as:
function iscupaj_viceve() {
$rows = array();
$sql = "SELECT id, VicText, glasanje FROM vicevi ORDER BY id DESC LIMIT 0, 10";
$rezultati = mysql_query($sql);
while (($row = mysql_fetch_assoc($rezultati)) !== false) {
$rows[$row['id']] = $row['VicText'];
}
return $rows;
}
Upvotes: 1
Reputation: 176
iscupaj_viceve() doesn't always return an array.
$glasanje = array();
should be
$rezultati = array();
Upvotes: 0