Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]System głosowania / Porównywanie zdjęć, Problem
Omin
post 25.07.2016, 11:44:36
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 18.08.2014

Ostrzeżenie: (0%)
-----


Witam serdecznie smile.gif
Chciałem zrobić stronę na której można głosować na zdjęcia.
Na stronie pojawiają się losowo dwa zdjęcia, których ścieżki znajdują się w bazie danych.
W bazie danych mam tabele - Zdjecia a w niej 'image_id','image_url', 'Wynik'.

Mój problem polega na tym, że jak już pojawią się te zdjęcia i kliknę w przycisk niżej pod jednym z nich to punkt przyznawany jest do zdjęcia o innym ID niż było wyświetlone np. pojawia się zdjęcie o ID = 1 a punkt dostaje zdjęcie o ID = 5.

Kod losowania zdjęcia, wyjęcia go z bazy:

  1.  
  2. $losoweID = mysql_query("SELECT `image_id` FROM `zdjecia` ORDER BY `image_id` DESC LIMIT 1");
  3. $obrazek=mysql_fetch_array($losoweID,MYSQL_NUM);
  4. $lastid=$obrazek[0];
  5.  
  6.  
  7. $img1=rand(1,$lastid);
  8. $img2=rand(1,$lastid);
  9.  
  10.  
  11.  
  12. while($img1==$img2){
  13. $img2=rand(1,$lastid);
  14. }
  15.  
  16. echo $img1;
  17.  
  18. echo $img2;
  19.  
  20. $Result1 = mysql_query("SELECT `image_id`,`image_url`,`Wynik` FROM `zdjecia` WHERE `image_id`=$img1");
  21.  
  22. $Obrazek1 = mysql_fetch_row($Result1);
  23.  
  24. $Result2 = mysql_query("SELECT `image_id`,`image_url`,`Wynik` FROM `zdjecia` WHERE `image_id`=$img2");
  25.  
  26. $Obrazek2 = mysql_fetch_row($Result2);
  27.  


Kod wyświetlania zdjęcia :

  1. <?php
  2. echo '<img src="'. $Obrazek1[1] . '" />';
  3. ?>



Kod przycisku, który po kliknięciu powinien dodać punkt:

  1. <form method="POST" action="index.php">
  2. <div class="przycisk">
  3. <button type="button" class="btn btn-default btn-lg przycisk_wielkosc">
  4. <a href="index.php?akcja=zapytanie" class="btn btn-default btn-lg btn-block ">Głosuj!</a>
  5. </button>
  6. </div>
  7. </form>


No i kod uaktualniania wyniku:
  1. if (isset($_GET['akcja']) and $_GET['akcja']=='zapytanie'){
  2. $sql = "UPDATE `zdjecia` SET `Wynik`=`Wynik`+1 WHERE `image_id`='$img1'";
  3. mysql_query($sql) or die('BŁĄD:'.mysql_error());
  4. }



Nie ukrywam, że trochę się pogubiłem :/

Pozdrawiam




Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
motyl-pl
post 25.07.2016, 12:01:09
Post #2





Grupa: Zarejestrowani
Postów: 294
Pomógł: 31
Dołączył: 2.04.2010

Ostrzeżenie: (0%)
-----


Po przeładowaniu strony randuje Ci zaś nową liczbę.
Powinieneś ukryć w polu input hidden id obrazka a nastepnie przechwytywać to postem i na podstawie ukrytego pola robić update.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 02:59