[ peca89bg @ 16.06.2010. 10:54 ] @
Code:
<?php
    function povecaj_cenuleku()
    {
        $kome = $_POST['imeleka'];
        $koliko = $_POST['koliko'];
        
        konektuj_se();
        $upit ="update V where IME = $imeleka SET CENA = CENA + $koliko";
                                
        $rez = mysql_query($upit);
        if (mysql_error()) echo mysql_error();
        else 
            echo("Uspesno!");
        diskonektuj_se();
    }
?>


radim seminarski na faxu i trebam da imam f-ju za povecanje cene propizvoda u mom slucjau je to lek.. izbacuje mi ovu gresku:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where IME = SET CENA = CENA +' at line 1

pokusao sam i da where IME = $imeleka stavim posle SET CENA = CENA + $koliko i opet nece :S :S

jel moze neko da mi pomogne?

[Ovu poruku je menjao Goran Rakić dana 16.06.2010. u 13:01 GMT+1]
[ tarla @ 16.06.2010. 11:00 ] @
treba IME = '$imeleka'

I nemoj šta zamjeriti ali ovo je mysql forum tako da nema potrebe da kopiraš kobasicu koda.

PHP != MySQL

Primjetio sam takođe da zadnjih 100 postova koda na ovom forumu ima sigurnosnu rupu. Jel svi čitate istu knjigu ili kopirate jedni od drugih ?
[ flylord @ 16.06.2010. 11:01 ] @
pa promenjiva $imeleka ti nije setovana :S. I svaki string koji saljes u bazu moras da iskejpujes iz razno raznih razloga:

- dalje, po standardu pisanja SQL koda, za imena kolona se koriste mala slova, a imena klauzula (sql rezervisane reci) se pisu velikim slovima
- NIKAD, nemoj da nazivas ime tabele, kolone, ili neke promenjive samo jednim slovom

Code:

if (!empty($imeleka)) {
    $imeleka = addslashes($imeleka);
    $koliko = (float)$koliko;
    $upit ="UPDATE v WHERE ime = '$imeleka' SET cenA = CENA + $koliko";
}


[ flylord @ 16.06.2010. 11:03 ] @
Citat:
tarla
Primjetio sam takođe da zadnjih 100 postova koda na ovom forumu ima sigurnosnu rupu. Jel svi čitate istu knjigu ili kopirate jedni od drugih ?


I ne samo to, nego apsolutno niko ne proverava da li su mu definisane promenjive. Ja ludim kad neki kod javlja notice i warning-e, i ne kapiram kako to ljudima ne smeta