banjalukaforum.com

Dobrodošli na banjalukaforum.com
Danas je 28 Mar 2024, 10:59

Sva vremena su u UTC [ DST ]




Započni novu temu Odgovori na temu  [ 6 Posta ] 
Autoru Poruka
 Tema posta: PHP/SQL problem
PostPoslato: 21 Dec 2017, 21:30 
OffLine
Veteran
Veteran
Korisnikov avatar

Pridružio se: 14 Feb 2011, 15:13
Postovi: 1719
Mucim se sa jednom web aplikacijom, u pitanju je standardna kontakt forma, koja kupi podatke i unosi u bazu (tekst iskljucivo).
E sad, drugi dio su pitanja sa tri ponudjena odgovora, na svako pitanje daje odgovor sa "tacno" ili "netacno".

Problem je u prikazu podataka iz baze

Do sada je bilo prikaz svakog pitanja u tabeli i odgovor (tacno ili netacno).
S obzirom da se povecava broj pitanja, potrebno je samo ispisati SUMU tacnih odgovora.

Pretpostavljam, da treba modifikovati i formu i bazu, ono sto bi meni bilo najidealnije, jeste svakom pitanje dati isto ime, odnosno da sve odgovore unosi u jedno polje (Recimo polje "Ukupno tacnih odgovora"), pritom bih morao promjeniti "tacno" i "netacno" u 1 i 0.

Ono sto me zanima je kako to izvesti u PHPu, dakle, treba mi tacna sintaksa za:

PHP:
Kod:
INSERT into ImeBaze (ime, prezime, mejl... , odgovori) VALUES ('$ime', '$prezime', '$mejl'... , '$odgovori') [color=#FF0000]ON DUPLICATE KEY UPDATE[/color];


Izguglao sam ovo crveno, ali kako nisam bas vjest, ono sto hocu reci bazi je: Ako vec postoji broj u zadanom polju, dodaj mu 1 ili 0, u zavisnosti da li je tacan, odnosno netacan odgovor.

Pomagajte, guglao sam satima, ali kao sto rekoh...

_________________
I am Alpha & Omega, the beginning and the end, the first and the last...


Vrh
 Profil  
 
 Tema posta: Re: PHP/SQL problem
PostPoslato: 21 Dec 2017, 22:16 
OffLine
Veteran
Veteran
Korisnikov avatar

Pridružio se: 29 Jun 2010, 16:23
Postovi: 3551
Lokacija: Kad kreneš od Boske ka mljekari
Ja sam te 30% skontao. :)
Meni se cini da nisi dobro struktuirao bazu na osnovu primjera.
Kakva je struktura u bazi i sta konkretno hoces da izvuces iz nje?

_________________
Ako si najbolji u sobi u pogresnoj si sobi


Vrh
 Profil  
 
 Tema posta: Re: PHP/SQL problem
PostPoslato: 21 Dec 2017, 22:27 
OffLine
Bič božji
Bič božji
Korisnikov avatar

Pridružio se: 20 Jul 2009, 10:16
Postovi: 12660
Lokacija: Treći kamen od Sunca
Bahamut je napisao:
ono sto hocu reci bazi je: Ako vec postoji broj u zadanom polju, dodaj mu 1 ili 0, u zavisnosti da li je tacan, odnosno netacan odgovor.


ovako nesto?

UPDATE dbo.TabelaPitanja SET Odgovori = (CASE Odgovori WHEN 'tacno' THEN 1 ELSE 0 END);


Vrh
 Profil  
 
 Tema posta: Re: PHP/SQL problem
PostPoslato: 22 Dec 2017, 10:54 
OffLine
Veteran
Veteran
Korisnikov avatar

Pridružio se: 14 Feb 2011, 15:13
Postovi: 1719
^ To kralju.
S tim da sam ja dodao + kako bi sabiralo unutar polja:

UPDATE dbo.TabelaPitanja SET Odgovori = (CASE Odgovori WHEN 'tacno' THEN +1 ELSE +0 END);

E sad, problem se javlja sto se cijela kolona update-uje, a poslednji u nizu mi javlja 0, tek kad se ponovo submituje dodaje mu vrijednosti.
Ali onda nakon sledeceg submita ponovo mu dodaje istu vrijednost.

Recimo:
Ispunio sam formu sa 13 tacnih odgovora.
U bazi prikazuje 0.
Nakon sledeceg submita, u bazi se azurira tih 13 odgovora.
Ali onda, nakon jos jednog submita tih 13 odgovora postane 26 odgovora.

Jos mi samo treba kako da se updat-uje samo jedan red, odnosno, da se prilikom novog submita ne diraju stari unosi.

_________________
I am Alpha & Omega, the beginning and the end, the first and the last...


Vrh
 Profil  
 
 Tema posta: Re: PHP/SQL problem
PostPoslato: 22 Dec 2017, 10:58 
OffLine
Bič božji
Bič božji
Korisnikov avatar

Pridružio se: 20 Jul 2009, 10:16
Postovi: 12660
Lokacija: Treći kamen od Sunca
UPDATE dbo.TabelaPitanja SET Odgovori = (CASE Odgovori WHEN 'tacno' THEN +1 END) WHERE IDPitanje = $IDIzForme;

tako nesto, trebas jedinstveno identifikovati na koje pitanje je odgovoreno prilikom submita

ovo ELSE +0 ti ne treba, time mu samo kazes kad nije ispunjen uslov ne dodaj nista, onda komotno mozes obrisati :D


Vrh
 Profil  
 
 Tema posta: Re: PHP/SQL problem
PostPoslato: 22 Dec 2017, 17:54 
OffLine
Veteran
Veteran
Korisnikov avatar

Pridružio se: 14 Feb 2011, 15:13
Postovi: 1719
Uzmajmunisao sam nekako na najjednostavniji moguci nacin.

Preimenovao sam odgovore iz "Tacno" u 1 i "Netacno" u 2, stavio ih kao integer i kasnije povukao sumu u PHPu, radi k'o sat :D

Hvala na pomoci.

_________________
I am Alpha & Omega, the beginning and the end, the first and the last...


Vrh
 Profil  
 
Prikaži postove u poslednjih:  Poređaj po  
Započni novu temu Odgovori na temu  [ 6 Posta ] 

Sva vremena su u UTC [ DST ]


Ko je OnLine

Korisnici koji su trenutno na forumu: Nema registrovanih korisnika i 2 gostiju


Ne možete postavljati nove teme u ovom forumu
Ne možete odgovarati na teme u ovom forumu
Ne možete monjati vaše postove u ovom forumu
Ne možete brisati vaše postove u ovom forumu
Ne možete slati prikačene fajlove u ovom forumu

Pronađi:
Idi na:  
Powered by phpBB® Forum Software © phpBB Group
Hosting BitLab
Prevod - www.CyberCom.rs