Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] wyświetlanie danych na stronie
Forum PHP.pl > Forum > Przedszkole
Grzes978
Witam

Raczkuje w tematyce php, i moje obecne programowanie polega na nauce. Obecnie chcę aby na stronie www wyświetlały się 3 filmy z serwisów Vimeo lub You tube.
W bazie danych mam już zapisane
id wpisu auto increment
typ video 1=vimeo 2 youtube
title wiadomo
videoid = to kod filmu z serwisu w postaci liczb (vimeo) lub liczb i cyfr (you tube)

Poniżej jest scrypt, ktory łaczy z bazą i wyświetla mi jeden filmik z danej categorii
poprzez linki mogę zmienić wyświetlanie filmu na inna kategorię

Niestety nie mogę zakumać jak zrobić by wyświetlić 3 filmy z danej kategorii,

Proszę o pomoc, może jakaś mała podpowiedź, w postaci scryptu, etc.

W php bawię sie od niedawna i krok po kroczku próbuje się wgłebiać ale teraz stanałem na maksa.


Dzieki

  1. <?php
  2. include("include/menu.php");
  3. include("include/link.php"); // podłączenie do bazy danych
  4.  
  5. if(isset($_GET["wybor"]))
  6. $wybor=$_GET["wybor"];
  7. else
  8. $wybor=1;
  9.  
  10. $query=mysql_query("SELECT id, videoType, title, videoId FROM video WHERE category='$wybor' ORDER BY id DESC LIMIT 3",$polaczenie);
  11. $result=mysql_fetch_row($query);
  12.  
  13. $id = $result[0];
  14. $type = $result[1];
  15. $title = $result[2];
  16. $videoid = $result[3];
  17.  
  18. $vimeo1='<object width="160" height="90"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" />
  19. <param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=';
  20. $vimeo2='&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" />
  21. <embed src="http://vimeo.com/moogaloop.swf?clip_id=';
  22. $vimeo3='&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="160" height="90">
  23. </embed></object>';
  24.  
  25. $youtube1='<object width="160" height="90"><param name="movie" value="http://www.youtube.com/v/';
  26. $youtube2='&amp;hl=pl_PL&amp;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param>
  27. <embed src="http://www.youtube.com/v/';
  28. $youtube3='&amp;hl=pl_PL&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="160" height="90">
  29. </embed></object>';
  30.  
  31. if ($type == 1)
  32. $kod = $vimeo1.$videoid.$vimeo2.$videoid.$vimeo3;
  33. else
  34. $kod = $youtube1.$videoid.$youtube2.$videoid.$youtube3;
  35.  
  36. $film1=$kod;
  37.  
  38. ?>
  39.  
  40. <center>
  41. <a href=<?php echo '/test/video.php?wybor=1'?>>Biegi górskie</a><br />
  42. <a href=<?php echo '/test/video.php?wybor=2'?>>Rowery górskie</a><br />
  43. <a href=<?php echo '/test/video.php?wybor=3'?>>Skitury</a><br />
  44. <a href=<?php echo '/test/video.php?wybor=4'?>>Speleologia</a><br />
  45. <a href=<?php echo '/test/video.php?wybor=5'?>>Trekking</a><br />
  46. <a href=<?php echo '/test/video.php?wybor=6'?>>Wspinanie</a><br /><br />
  47.  
  48.  
  49. <table border="1">
  50. <tr>
  51. <td><center><?php echo $film1;?><br /><?php echo $title; ?></center></td>
  52. <td><center><?php ?></center></td>
  53. <td><center><?php ?></center></td>
  54. </tr>
  55. </table>
  56.  
  57. </center>
  58.  
  59. <?php
  60. include("include/footer.php");
  61. ?>
nospor
Musisz uzyc petli WHILE
w manualu masz przyklady
http://pl2.php.net/manual/pl/function.mysql-fetch-array.php

ps: uzywaj BBCODE
Grzes978
ok petla while

ona pozwala mi na wyświetlenie wyniku z bazy danych ale jak to włożyć do kodu

tak aby w pierwszej <td> tabelki </td>scrypt wziął dane z pierwszego wiersza z tabeli bazy danych i wykorzystał je do wyświetlenia filmu , w drugiej <td> z drugiego wiersza etc?questionmark.gifquestionmark.gif

bo tera to mi wyswietli tylko wynik na stronie i tyle
thomson89
Jeżeli filmiki mają być pod sobą to robisz tak:
  1. <?php
  2. $i = 0;
  3. print '<table>';
  4. while($i <= $ilefilmow)
  5. {
  6. print '<tr><td>';
  7. print $film;
  8. print '</td></tr>';
  9. $i++;
  10. }
  11. print '</table>';
  12. ?>

To oczywiście tylko przykład.
Grzes978
takie rozwiązanie powoduje ze wyświetlaja sie filmiki ale wszystkie te same :-)
thomson89
A chociaż coś zmieniłeś w tym kodzie? To był tylko przykład ty to musisz odpowiednio przerobić.

Inny przykład:
  1. while($row = mysql_fetch_assoc($wynik))
  2. {
  3. //tutaj kodzik od 13 do 34
  4. // + wyświetlanie (ale to już pokombinuj)
  5. }
Grzes978
zapodaje gotowy kodzik który wyświetla filmy koło siebie w tabelce kazdy inny a pod dolem tytuł danego filmu

  1. <?php
  2. include("include/menu.php");
  3. include("include/link.php");
  4.  
  5. if(isset($_GET["wybor"]))
  6. $wybor=$_GET["wybor"];
  7. else
  8. $wybor=1;
  9.  
  10. if(isset($_GET["ilosc"]))
  11. $ilosc=$_GET["ilosc"];
  12. else
  13. $ilosc=3;
  14.  
  15. $vimeo1='<object width="240" height="135"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" />
  16. <param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=';
  17. $vimeo2='&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" />
  18. <embed src="http://vimeo.com/moogaloop.swf?clip_id=';
  19. $vimeo3='&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="240" height="135">
  20. </embed></object>';
  21.  
  22. $youtube1='<object width="240" height="135"><param name="movie" value="http://www.youtube.com/v/';
  23. $youtube2='&amp;hl=pl_PL&amp;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param>
  24. <embed src="http://www.youtube.com/v/';
  25. $youtube3='&amp;hl=pl_PL&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="240" height="135">
  26. </embed></object>';
  27.  
  28. ?>
  29.  
  30. <center>
  31. <a href=<?php echo '/test/video2.php?wybor=1'?>>Biegi górskie</a><br />
  32. <a href=<?php echo '/test/video2.php?wybor=2'?>>Rowery górskie</a><br />
  33. <a href=<?php echo '/test/video2.php?wybor=3'?>>Skitury</a><br />
  34. <a href=<?php echo '/test/video2.php?wybor=4'?>>Speleologia</a><br />
  35. <a href=<?php echo '/test/video2.php?wybor=5'?>>Trekking</a><br />
  36. <a href=<?php echo '/test/video2.php?wybor=6'?>>Wspinanie</a><br /><br />
  37.  
  38. </center>
  39.  
  40. <?php
  41. print '<center><table border="0"><tr>';
  42.  
  43. $query=mysql_query("SELECT videoType, title, videoId FROM video WHERE category='$wybor' ORDER BY id DESC LIMIT $ilosc ",$polaczenie);
  44.  
  45. while ($rekord = mysql_fetch_assoc($query)) {
  46. $type = $rekord['videoType'];
  47. $title = $rekord['title'];
  48. $videoid = $rekord['videoId'];
  49.  
  50. print '<td><center>';
  51. if ($type == 1)
  52. $kod = $vimeo1.$videoid.$vimeo2.$videoid.$vimeo3;
  53. else
  54. $kod = $youtube1.$videoid.$youtube2.$videoid.$youtube3;
  55. echo $kod;
  56. print '<br/ >';
  57. echo $title;
  58. print '</center></td>';
  59. }
  60. print '</tr></table></center>';
  61.  
  62. ?>
  63. <center> wyświetl <a href=<?php echo '/test/video2.php?ilosc=1'?>>1</a>
  64. <a href=<?php echo '/test/video2.php?ilosc=2'?>>2</a>
  65. <a href=<?php echo '/test/video2.php?ilosc=3'?>>3</a> filmy na stronie
  66. </center>
  67. <?php
  68. include("include/footer.php");
  69. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.