[ InterMilanSerbia @ 18.11.2013. 01:57 ] @
Nasao sam neku skriptu za anketu i ne znam da li je dobra.
Sta biste vi na njoj izmenili i kako(molim ostavite kod).
Kakvu bazu da napravim za ovu skriptu.Koji naziv bi trebalo da ima baza,koji tabela i iz kojih bi polja tabela trebala da se sastoji.Koje polje u tabeli bi bilo primarno u tom slucaju.
Ako znate neku bolju anketu ili kompletan tutorial na srpskom molim ostavite link.
Evo skripte tj. php dela skripte:
Code:

<body style="font-family:Arial, Helvetica, sans-serif">
<?php
//ucitavamo promenljive
$odgovor = $_POST['anketa'];
$post = $_POST['post'];
//konektovanje u bazu podataka
mysql_connect("localhost","root","");
mysql_select_db("anketa");
//uzimanje odgovarajuceg rate-a da bi na njegov broj dodali +1
$upit = mysql_query("SELECT * FROM anketa WHERE odgovor = '$odgovor'");
$red = mysql_fetch_assoc($upit);
//definisemo promenljivu za promenu rate-a
$rate = $red['rate'];
$new_rate = $rate+1;
//izmenjivanje baze podataka i proveravanje postojanja odgovora i sesije (ako korisnik nije ni jedanput glasao onda ce moci da glasa)
if(isset($odgovor)){
 $_SESSION['glasanje'] = 1;
 if($_SESSION['glasanje']=1){
 echo "<strong style='font-family: Arial, Tahoma;'>Ne mozete glasati 2 puta</strong>";
 }else{
 $query = mysql_query("UPDATE anketa SET rate = '$new_rate' WHERE odgovor = '$odgovor'");
 echo "Uspesno ste glasali!<br/>";
 }
}
echo "<h2>Rezultati</h2><br />";
//uzimanje podataka da bi se prikazali rezultati baze podataka Sortirano je po glasovima (koji odgovor ima najvise glasova taj odgovor ce da bude prvi)
$q = mysql_query("SELECT * FROM anketa ORDER BY rate DESC");
while($row = mysql_fetch_assoc($q)){
 $odgovor = $row['odgovor'];
 $rate = $row['rate'];

 echo "$odgovor-$rate<br />";
}
?>
<a href="anketa.html">Anketa</a>
</body>


Html deo koda:
Code:

<body style="font-family:Arial, Helvetica, sans-serif">
<form action="anketa.php" method="post">
<strong>Kako vam se svidja sajt?</strong><p>
<input name="anketa" type="radio" value="Dobar" />Dobar je!<br />
<input name="anketa" type="radio" value="Onako" />Onako.<br />
<input name="anketa" type="radio" value="Los" />Loš je.<br />
<input type="submit" name="post" value="Posalji odgovor"/>
</form>
</body>
[ bogdan.kecman @ 18.11.2013. 02:09 ] @
Citat:
InterMilanSerbia: Nasao sam neku skriptu za anketu i ne znam da li je dobra.
Sta biste vi na njoj izmenili i kako(molim ostavite kod).


mislim da si promasio temu

Citat:
InterMilanSerbia:
Kakvu bazu da napravim za ovu skriptu.


?! sta znaci "kakvu" ?

Citat:
InterMilanSerbia:
Koji naziv bi trebalo da ima baza,koji tabela


onako kako ti zelis? naziv baze treba da tebi pomogne da znas o cemu se radi, tehnicki mozes da je zoves db000001, isto i tabele, postoji nekoliko standardnih nacina ali sto se same tehnike tice mozes da ih zoves tbl1, tbl2...

Citat:
InterMilanSerbia:
i iz kojih bi polja tabela trebala da se sastoji.Koje polje u tabeli bi bilo primarno u tom slucaju.


za to kako treba da izgleda struktura baze moras prvo da znas sta cuvas u bazi, dakle reci sta zelis da cuvas i sta sa tim podacima da radis pa ti mozda neko predlozi kako da ih organizujes za sada ne vidim da si rekao sta zelis da cuvas

Citat:
InterMilanSerbia:
Ako znate neku bolju anketu ili kompletan tutorial na srpskom molim ostavite link.


ako zelis da se bavis programiranjem u zivotu, prvi idi nauci engleski do nivoa da nemas nikad potrebu nista da trazis "na srpskom" vec da ti je svejedno da li pise na engleskom ili sprskom, tek kad dostignes to onda se vrati da ucis programiranje

Citat:
InterMilanSerbia:
mysql_connect("localhost","root","");
mysql_select_db("anketa");

skripta ocekuje da se baza zove anketa i da se nalazi na localhost-u sa userom root bez sifre (retardirano)


Citat:
InterMilanSerbia:
$odgovor = $_POST['anketa'];
$post = $_POST['post'];
$upit = mysql_query("SELECT * FROM anketa WHERE odgovor = '$odgovor'");


skripta ocekuje da se tabela zove anketa i busna je ko svajcarski sir, ko je pisao ovo niti zna php niti ima prvu ideju o sigurnosti date, sajta i slicno, sajtu sa ovakvom skriptom se obrise baza dok si reko sql-injection

Citat:
InterMilanSerbia:
$rate = $red['rate'];


skripta ocekuje da tabela "anketa" ima polja "odgovor" i "rate" i pritom nema nikakve kljuceve

[ InterMilanSerbia @ 18.11.2013. 02:37 ] @
Uopste ne planiram da se bavim programiranjem,samo sam pokusao vec uradjenom sajtu da dodam par skripti,da ga poboljsam.
Hoces da se dogovorimo da mi uradis skriptu za anketu i jos par skripti.
Uplata na racun,slanje na e-mail.
Kontakt e-mail:[email protected]
[ bogdan.kecman @ 18.11.2013. 02:42 ] @
imas oglase za tako nesto, posebno u odgovarajucem forumu:
http://www.elitesecurity.org/f12-PHP

tamo napises lepo oglas, treba mi covek da mi napravi xyz i neko ce ti
se vec javiti
[ nkrgovic @ 18.11.2013. 09:07 ] @
Citat:
InterMilanSerbia: Nasao sam neku skriptu za anketu i ne znam da li je dobra.
Sta biste vi na njoj izmenili i kako(molim ostavite kod).

Programera.

Evo kod:

Code:
$odgovor = $_POST['anketa'];
$post = $_POST['post'];
//konektovanje u bazu podataka, [b]bez autorizacije i sa previse privilegija[/b]
mysql_connect("localhost","root","");
mysql_select_db("anketa");
// [b] Otvaranje za SQL Injection [/b]
$upit = mysql_query("SELECT * FROM anketa WHERE odgovor = '$odgovor'");