Witam.
Mam mały problem, pobieram dane z bazy sql, wyświetlają się tak jak powinny, ale jak chce wykonać zapis do bazy sql wciskając button to zapisuje mi zawsze ostatni wyświetlony wpis - nie ważne ile ich jest czy 2 czy 10 zawsze ostatni.
Mój kod:
if(mysql_num_rows($wynik) > 0)
{
while($r = mysql_fetch_assoc($wynik))
{
$cena = $r['cena'];
$id = $r['id_budynek'];
echo '<tr>
<th style="width: 100px" style="vertical-align: middle;">
<font size="4" color="green">'.$r['nazwa'].'</font>
</th>
<th style="width: 100px" style="vertical-align: middle;">'.$r['ilosc'].' szt</th>
<th style="width: 100px" style="vertical-align: middle;">$'.$r['zysk'].'</th>
<th style="width: 100px" style="vertical-align: middle;">$'.round($r['cena']).'</th>
<th style="width: 100px" style="vertical-align: middle;">';
if ($kasa >= $cena ){
echo "<input type=\"hidden\" name=\"id\" value='$id' />
<input type='submit' name='ok' class='medium blue niceButton' value='Kup'</th></tr></form>";
}
else {
echo '<a href="#" class="medium red niceButton">Brak $</a></th></tr>';
}
}
}
if(isset($_POST['ok']) && $kasa >= $cena)
{
$id = $_POST['id'];
$sprawdz = mysql_query("SELECT * FROM `gra_budynki` WHERE nick='$nick' && id_budynek = '$id'");
$s = mysql_fetch_assoc($sprawdz);
$cena=$s['cena'];
$ilosc=$s['ilosc'];
$zysk=$s['zysk'];
$ulepsz=$s['ulepsz'];
$ilosc1=$ilosc+1;
$zysk1=$zysk+$ulepsz;
$cena2=$cena+($cena*0.1);
$cena1=round($cena2);
$kasa1=$kasa-$cena1;
$query = "UPDATE gra_budynki SET ilosc = '$ilosc1' WHERE nick='$nick' && id_budynek = '$id'";
$query2 = "UPDATE gra_budynki SET zysk = '$zysk1' WHERE nick='$nick' && id_budynek = '$id'";
$query3 = "UPDATE gra_budynki SET cena = '$cena1' WHERE nick='$nick' && id_budynek = '$id'";
$query4 = "UPDATE gra_dane SET kasa = '$kasa1' WHERE nick='$nick'";
if(mysql_query($query) && mysql_query($query2) && mysql_query($query3) && mysql_query($query4))
echo "wykonałem ".$id."";
}


Dodatki SourceMod




Temat jest zamknięty










