Помощ с един код за извличане от бд.

taneca

Registered
Молбата ми е някой да ми помогне, защото сам не мога да се справя с този код.

Код:
<?php
$cat = $_GET['cat'];
if($_POST['choice']) {
$sezon = $_POST['sezon'];
}
if ($sezon == NULL)
{
$query = mysql_query("SELECT * FROM serials WHERE cat='$cat'");
while ($row = mysql_fetch_array($query))
{
echo ''.$row['sezon'].'';
}
}
else {
$query = mysql_query("SELECT * FROM serials WHERE cat='$cat' and sezon='$sezon' ORDER BY id");
echo "Епизоди:";
while ($row = mysql_fetch_array($query))
{
echo '<div style="width:500px; background:black; padding:5px;">';
echo 'Епизод: <a href="index.php?p=serials&ext=view&id='.$row['id'].'">'.$row['epizod'].'</a>';
echo '</div>';
}
}
?>

Искам първата заявка, да се показва така, че да извлича само по веднъж различната информация от бд. Пример: Първо в страницата се показват сезоните на сериала и тъй като всеки сериал има различен брой сезони, искам да ги позва, но не както сега да показва всеки сезон по няколко пъти заради многото епизоди с този сезон!
Дано сте ме разбрали каквото искам :)
 
taneca каза:
От първата заявка не изкарва никакъв резултат.
Ами нагласи си полетата... може виж дали всичко е вярно (като име)
иначе по принцип се ползва group точно за не повтарящи се записи...
 
Какво ли не опитвах и не става, а сега съм със <select> и не е удобно да правя за всеки сериал нова страница, за да пиша колко сезона има.
Трябва ми помощ, вече се отчаях :)



ЕДИТ: Стана, но преместих групирането последно.
Код:
$query = mysql_query("SELECT * FROM serials WHERE cat='$cat' GROUP BY sezon");
 
тествах кода:
Код:
$result=mysql_query("select * from test group by name order by id desc limit 18");
преди group by показва 18 записа,след group by (като го поставя в кода) стават само 2 (по име) ... някъде бъркаш...


пс:Да моя грешка аз нямам where clause в заявката и group трябва да е най-отзад. :)
 
Мерси много, всичко е ОК! Обаче сега проблема е друг...
Искам като кликнеш на дадения сезон да ти изпълнява долната заявка, но без сега както съм го направил на линк.
Тоест сега имам едно селект меню, което ми е за пост и 2-та заявка дтрпа информация от него за сезона. Аз искам да е на картинка примерно всеки сезон и пак да играе ролята на POST
 
Ако правилно те разбрах просто при самата <form> ще сложиш input type radio и картинката,и съответно като кликнеш на радио бутона (под картинката) ще е като дроп даун ролята.
А другиа вариант , е да се направи със javascript при кликане на картинката,да се селектира съответното radio бутонче (невидимо за очите на потребителя)
аз направих подобно нещо за една игра... ако това ти трябва след секунда ще ти постна кода.
 
Код:
<input type="radio" value="1" checked="" name="" id="b1" style="display:none;" />
<img src="images/1.png"  title="" id="p1"/>

<input type="radio" value="2" checked="" name="" id="b2" style="display:none;" />
<img src="images/2.png"  title="" id="p2"/>

<input type="radio" value="3" checked="" name="" id="b3" style="display:none;" />
<img src="images/3.png"  title="" id="p3"/>

	<script>
$(function(){
  $("#p1, #p2, #p3").click(function() {
      //get id
      var d = $(this).attr(\'id\').match(/\d+/);

      //check to the proper radio button
      $("#b"+d).prop("checked", true);
   });
});


</script>
3 картинки,като картинката е свързана към дадения radio buton ,който е скрит,със jquery при клик на картинка се сменя и съответния избор... дано схващаш идеята...
:)
 

Back
Горе