Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem sa UPDATE - php->MySQL

[es] :: PHP :: Problem sa UPDATE - php->MySQL

[ Pregleda: 3121 | Odgovora: 14 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Frane Marinković
MNGR & Technical Support Dept.,
Get-Host.net Group
Hrvatska

Član broj: 23984
Poruke: 513
*.dsl.optinet.hr.

Jabber: frane.marinkovic@elitesecurity.org
Sajt: get-host.net


+1 Profil

icon Problem sa UPDATE - php->MySQL27.12.2007. u 18:58 - pre 198 meseci
Radim jedan malo poveci projekt i gotov sam, sad cekam hosting, i radim neke detalje i evo dođem do tu i zapnem, ne znam zašto, ali već koristim slicnu funkciju na drugim pageovima i radi bez problema....

evo tog spornog dijela


znaci u bazi imam jedan column "out" koji broji izlazne klikove za pojedine stvari i njega treba kad se pokrene ovaj script da se uveća za +1

Code:
<?php
include("connect.php"); 
    $koji_id = addslashes($_GET['id']); // id znaci getam ga ?id=2 npr.
    
    function out($id) //count the vote and save ip of last voter to avoid cheating
{
        $rezultat= mysql_query("select * from toplist where id='$id'"); //
    while($uzmi = mysql_fetch_array($rezultat)){                               // to je dodano jer sam mislio da
        $do_sada = $uzmi['out'];                                                  //  out= out+1 nece da radi, ali eto
        $nova=$do_sada++;                                                        //                    ne radi ni ovako
        }
        $update="UPDATE linkovi SET out= '$nova' WHERE id= '$id'";
    mysql_query($update)
    or die('brojac - greska: '.mysql_errno().', '.mysql_error());
}

        out($koji_id);  //pozivam ispod u if-u ali nije bitno sad
        

?>


na update sam stavljao i .... SET out= out+1 ali opet grešku daje istu, pa sam onda pokušao s vađenjem pa onda $do_sada++;
Code:

1064, 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 'out= '1' WHERE id= '2'' at line 1

 
Odgovor na temu

dakipro
Dalibor Jovic
Web Developer
Bergen, Norway

Moderator
Član broj: 31848
Poruke: 1792
89.216.108.*

Sajt: norway.dakipro.com


+190 Profil

icon Re: Problem sa UPDATE - php->MySQL27.12.2007. u 20:03 - pre 198 meseci
Mislim da bi ovo proradelo

Code:
SET `out`= `out`+1

jer je OUT kljucna rec (nisam siguran tacno od koje verzije)
http://dev.mysql.com/doc/refman/5.0/en/reserved-words.html

 
Odgovor na temu

Frane Marinković
MNGR & Technical Support Dept.,
Get-Host.net Group
Hrvatska

Član broj: 23984
Poruke: 513
*.dsl.optinet.hr.

Jabber: frane.marinkovic@elitesecurity.org
Sajt: get-host.net


+1 Profil

icon Re: Problem sa UPDATE - php->MySQL27.12.2007. u 21:59 - pre 198 meseci
idem probat, ali zašto onda u drugoj funkciji isto u kojoj updatea bazu samo drugi column 'in' sve radi super na principu in= in+1 ...

evo sa 'out'='$do_sada'
Code:
error: 1064, 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 ''out'= '1' WHERE id= '2'' at line 1


i evo sa 'out'='out'+1
Code:
error: 1064, 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 ''out'= 'out'+1 WHERE id= '2'' at line 1



... nemam pojma koji k**** se događa
 
Odgovor na temu

dakipro
Dalibor Jovic
Web Developer
Bergen, Norway

Moderator
Član broj: 31848
Poruke: 1792
89.216.108.*

Sajt: norway.dakipro.com


+190 Profil

icon Re: Problem sa UPDATE - php->MySQL27.12.2007. u 22:21 - pre 198 meseci
Ne, ne citas pazljivo... I nema potrebe da se tako izrazavas jer ovaj forum prate i dame, tako da nije prikladno bar prema njima
Nisam napisao ' kao apostrof, nego ` (backticks, znak koje je levo od jedinice na tastaturi)
Da si procitao prvih par recenica na linku koji sam ti ostavio to bi i sam ukapirao.

Btw. i IN je takodje mysql kljucna rec koju bi trebalo izbegavati u davanju imena tabelama i poljima u mysql-u, sto se opet spominje na istom linku koji sam ti dao. (bar pise da trebaju "special treatment for use as identifiers such as table and column names").
 
Odgovor na temu

Frane Marinković
MNGR & Technical Support Dept.,
Get-Host.net Group
Hrvatska

Član broj: 23984
Poruke: 513
*.dsl.optinet.hr.

Jabber: frane.marinkovic@elitesecurity.org
Sajt: get-host.net


+1 Profil

icon Re: Problem sa UPDATE - php->MySQL27.12.2007. u 22:52 - pre 198 meseci
Code:

error: 1064, 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 '¸out¸= ¸out¸+1 WHERE id= '2'' at line 1



opet isto
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
79.101.131.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Problem sa UPDATE - php->MySQL28.12.2007. u 16:25 - pre 198 meseci
Koliko ja vidim, ti koristiš ¸ a ne ` znak u query-ju...

Takođe, pre bih rekao da je ovo pitanje za SQL forum a ne za PHP...
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

Frane Marinković
MNGR & Technical Support Dept.,
Get-Host.net Group
Hrvatska

Član broj: 23984
Poruke: 513
*.dsl.optinet.hr.

Jabber: frane.marinkovic@elitesecurity.org
Sajt: get-host.net


+1 Profil

icon Re: Problem sa UPDATE - php->MySQL28.12.2007. u 16:32 - pre 198 meseci
okok, riješio, meni je inaće ` AltGr + 7...

thx na pomoći
 
Odgovor na temu

1r0nM4n
Nenad Vasić
Web Developer
Beograd

Član broj: 55970
Poruke: 441
*.ikomline.net.

ICQ: 303614173
Sajt: www.nenadvasic.com


+1 Profil

icon Re: Problem sa UPDATE - php->MySQL28.12.2007. u 19:05 - pre 198 meseci
Citat:
AltGr + 7

Wtf?!
Taj znak ti je levo od jedinice (ispod esc)..

p0z
 
Odgovor na temu

BigFoot
Boban Jovanović
Arilje

Član broj: 1098
Poruke: 991
79.101.176.*



+35 Profil

icon Re: Problem sa UPDATE - php->MySQL01.01.2008. u 20:15 - pre 198 meseci
Citat:
Frane Marinković:
Code:

//...
$do_sada = $uzmi['out'];
$nova=$do_sada++;                 // GREŠKA!!!
}
$update="UPDATE linkovi SET out= '$nova' WHERE id= '$id'";


Koristio si postinkrement operator ++, dakle prvo je izvšena dodela $nova=$do_sada, pa tek onda uvećano $do_sada++. Uradi prvo inkrementiranje, pa dodelu i biće ok.
Mada, čudna ti je ovo konstrukcija. U komentaru stoji "count the vote and save ip of last voter to avoid cheating". Šta je "last voter"? Upit koji koristiš nema ORDER klauzulu. Osim toga, vrtiš prazne komande u petlji da bi uzeo vrednost poslednjeg sloga, ma šta to značilo, umesto da to uradiš u samom upitu, a da umesto petlje imaš samo jedan, traženi rezultat. Potencijalno, upit može vratiti mnogo slogova, pa ćeš usporiti odziv. Upit može biti npr.
Code:
$rezultat= mysql_query("select * from toplist where TopListID = (select MAX(TopListID) from toplist where id='$id')");

Polje TopListID je auto_increment ID polje koje i inače treba da sadrži svaka tabela, što je dobra praksa.
Two beer or not two beer...
 
Odgovor na temu

Frane Marinković
MNGR & Technical Support Dept.,
Get-Host.net Group
Hrvatska

Član broj: 23984
Poruke: 513
*.dsl.optinet.hr.

Jabber: frane.marinkovic@elitesecurity.org
Sajt: get-host.net


+1 Profil

icon Re: Problem sa UPDATE - php->MySQL03.01.2008. u 19:03 - pre 198 meseci
ma to je ostalo od varijable stare koju sam uzimao, i ne znam kako je vama ali evo šta meni izađe kad stitnem "Tildo" ili ti ga botun ispod Esc
Code:
¸


evo Shift + taj gumb
Code:
¨


i evo AltGr + 7
Code:
`



možda su srpske tipkovnice drugaćije nego ove naše :S

nebih znao
 
Odgovor na temu

Miroslav Ćurčić
ex mVeliki
Novi Sad

Član broj: 19034
Poruke: 1118
*.adsl.beotel.net.



+19 Profil

icon Re: Problem sa UPDATE - php->MySQL04.01.2008. u 09:07 - pre 198 meseci
Backtick (http://en.wikipedia.org/wiki/Backtick)
se nalazi ispod Esc na ASCII tastaturama,
ili na AltGr+7 na SR/HR (koje vode poreklo od slovenačke koja je opet napravljena od nemačke tastature).

I, jel radi sa: `out`=`out`+1 ?
"The quieter you become, the more you are able to hear."
Blog | PowerCMS
 
Odgovor na temu

Frane Marinković
MNGR & Technical Support Dept.,
Get-Host.net Group
Hrvatska

Član broj: 23984
Poruke: 513
*.dsl.optinet.hr.

Jabber: frane.marinkovic@elitesecurity.org
Sajt: get-host.net


+1 Profil

icon Re: Problem sa UPDATE - php->MySQL04.01.2008. u 13:07 - pre 198 meseci
Citat:
okok, riješio, meni je inaće ` AltGr + 7...

thx na pomoći


to sam napisao već prije par dana
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
91.150.112.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Problem sa UPDATE - php->MySQL04.01.2008. u 14:55 - pre 198 meseci
Ljudi, tema ove rasprave nije gde se nalazi backtick već update MySQL baze, pa vas molim da se držite teme.
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

BigFoot
Boban Jovanović
Arilje

Član broj: 1098
Poruke: 991
79.101.176.*



+35 Profil

icon Re: Problem sa UPDATE - php->MySQL05.01.2008. u 22:33 - pre 198 meseci
Nema veze ni sa update-om MySQL baze, nego sa elementarnim programiranjem. U navedenom primeru, konstrukcija:
Code:

$do_sada = $uzmi['out'];
$nova=$do_sada++;

ne čuva za jedan uvećanu, već originalnu vrednost $uzmi['out'] i tu je greška. Nema veze sa srpsko/hrvatskim "tipkovnicama"
Two beer or not two beer...
 
Odgovor na temu

Zmaj
Predrag Krstić
web developer
Zrenjanin

Član broj: 1035
Poruke: 382

Sajt: https://pkrstic.wordpress..


+4 Profil

icon Re: Problem sa UPDATE - php->MySQL06.01.2008. u 00:51 - pre 198 meseci
problem sa tasturom/tipkovnicom je sto se ne koristis engleski kodni raspored [EN], nego srpski, tj. hrvatski i slicno.

druga stvar je sto se pise los i neoptimalan kod pa ovo

Code:

$do_sada = $uzmi['out'];
$nova=$do_sada++;


moze da se napise

Code:

$nova = $uzmi['out'] + 1;


kao sto vidis nema $do_sada, inace vise volim da pisem nazive promenjljivih i funkcija na engleskom jer nema padeza pa je samim tim i manja mogucnost greske. isto vazi i za nazive tabela i polja u bazama
 
Odgovor na temu

[es] :: PHP :: Problem sa UPDATE - php->MySQL

[ Pregleda: 3121 | Odgovora: 14 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.