Kezdőoldal » Számítástechnika » Weblapkészítés » Hogyan lehetne egy ilyen...

Hogyan lehetne egy ilyen értékelési rendszert elkészíteni?

Figyelt kérdés

Van egy oldalam ahová videókat lehet feltölteni.

A főoldalon a videók ki vannak listázva egymás alá.


Azt szeretném elérni hogy a videókra lehessen szavazni igen-nel vagy nem-el.

A következő dolgokat szeretném megcsinálni:

-Csak tagok tudnak szavazni (csak 1x tudnak egy videóra, és az adatbázisban elmentődik a szavazatuk)

-Miután megnyomják az igen/nem gombot a videó alatt (oldalfrissítés nélkül) megjelenik az eredmény (az igen/nem gomb helyett), ami magába foglalja azt a szavazatot is amit nemrég adott le a tag.

-Ha a tag már szavazott akkor csak az eredményt mutassa.


Tudom hogy egy kicsit bonyolult és csak ajax-al tudnám megcsinálni amihez nem igazán értek.

az első , illetve a harmadik követelményt még tudom csinálni, viszont azt hogy a szavazat után eltűnjön a két opció és megjelenítse az eredményt, mindezt oldalfrissítés nélkül elég nehéz.



2015. júl. 10. 15:31
 1/4 anonim ***** válasza:
100%

nem nehéz az, egy különálló PHP -nak adod a kérést, akár jQuery onload -al, és a gombokat tartalmazó részt frissíted vele.

Csak rögzíteni kell, hogy ki, mire, mit szavazott.

Legközelebbi oldalbetöltésnél megnézed hogy szavazott -e már, ha igen, akkor csak az eredményt jeleníted meg neki.


A videó feltöltés sokkal bonyolultabb. (már ha saját oldaloon belül történik, és nem kölső pl. youtube -on)

2015. júl. 10. 15:40
Hasznos számodra ez a válasz?
 2/4 A kérdező kommentje:

a videó feltöltés külső.


de még mindig nem igazán tudom hogy kellene...

minden egyes videónak külön id-je van.

a szavazatnál van egy igen és egy nem osztály de nem iagazán tudom megcsinálni, eddig mindig példakódokat néztem de ehhez nem találtam.


csak olyat ami oldalfrissítés nélkül csinálja, meg olyat hogy csak egy videónál működik, mert ha kétszer kirakom akkor mindkettőnél szavaz

2015. júl. 10. 17:14
 3/4 anonim ***** válasza:

Uhh... akkor az alapoknál kell kezdeni, és ha azt megérted szinte bármit megtudsz csinálni kis gondolkodással.


Mi is a szavazat!?

1 ember, véleménye, 1 filmről.

Hogyan tudnánk tárolni.

User ID , Film ID, Vote

Tehát kell egy tábla amibe ezeket feltudod vinni.


Hogyan megy a szavazás!?

Van egy container elemed, benne a film 2 gombaj, igen, nem. (esetleg lehet több is pl. csillagos rendszerben)

1 gomb kap egy onclick eseményt, ami meghív egy funkciót az adott filmmel és szavazás értékével.

pl. <input type="button" value="Igen" onclick="vote(21,1);" />

Ez nem egy alap funkció ezt neked kell megírni javaScript -be.

function vote(FilmId,VoteValue) {

Itt a legegyszerűbb ha jQuery -t használsz, sokban segít némi google használattal.

$("#ContainerID").load('/vote.php?FilmID='+FilmId+'&vote='+VoteValue);

A ContainerID annak az elemnek az ID -je aminek a tartalma cserélődni fog, a vote.php feldolgozásából.


Most akkor térjünk át a PHP -ra, ezzel a művelettel megkapja a vote.php a $_GET['FilmID'] -t, és $_GET['vote'] értékkel a szavazás értékét.

Viszont hogy tud ki adta le, vissza kell ellenőrizni a felhasználót.

Ez a belépő rendszer alapján, lehet pl. SESSION -ból.

Bonyolultba esetben PHPSESSID alapján adatbázisból.

Ha meg van az UserID -ja, akkor mehetünk is tovább.

És mivel minden adat meg van, mehet is az adatbázisba szúrás.

INSERT INTO `vote-table-name` ( `UserID` , `FilmID`, `Vote` ) VALUES ( "$UserID", "$FilmID", "$Vote" )


De ezzel még nincs kész!

Mindig vissza kell ellenőrizni az adatokat, minimum escape -elni, hogy ne kerüljön be illetéktelen kódrészlet.


(Ez nagyon vázlatosan)

2015. júl. 10. 19:23
Hasznos számodra ez a válasz?
 4/4 A kérdező kommentje:

Most hogy így elmondtad megértettem, viszont összerakni nem tudom mennyire menne.


Pár hét és vagy összerakom vagy nem :D

2015. júl. 10. 21:19

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!