Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Download. kategorie podkategorie przekierowanie do pliku i ilosc pobran ?
Forum PHP.pl > Forum > PHP
djbarca
mam taki problem .. zrobilem download .. sa kategorie podkategorie przekierowanie do pliku i zliczanie pobran ?! na samym koncu kiedy chce kliknac w link wyskakuje mi blad z przekierowaniem .. kod :
  1. <?
  2. include("config.php");
  3.  
  4.  
  5.  
  6. ############# Przekierowanie i dopisanie pobrania #######
  7.  
  8. function getit($id) {
  9.  $query = "SELECT sciezka FROM download WHERE nr='$id'";
  10.  $wynik = mysql_query($query);
  11.  $row = mysql_fetch_array($wynik);
  12.  
  13.  Header("Location: ".$row['sciezka']);
  14.  
  15.  $query = "UPDATE download SET ilosc_pobran=ilosc_pobran+1 WHERE nr='$id'";
  16.  $wynik = mysql_query($query);
  17.  exit();
  18. }
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27. ############## Wyswietlenie plikow ###########
  28.  
  29. function viewfiles($nazwa_podkategori) {
  30.  $query = "SELECT * FROM download where download_podkategorie='$nazwa_podkategori' && ok=1";
  31.  $wynik = mysql_query($query);
  32.  
  33.  while($row = mysql_fetch_array($wynik)) {
  34.  echo "Plik: <a href=\"index.php?menu=3&op=getit&id=" . $row['nr'] . "\">" . $row['nazwa'] . "</a><br>";
  35.  
  36.  
  37.  }
  38.  
  39. }
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48. ############## FUNKCJA PodKategori ######
  49.  
  50.  
  51.  
  52. function podkategoria($nazwa_kategori) {
  53.  
  54. $wynik=mysql_query("SELECT * FROM podkategoria where dla_kategori='$nazwa_kategori';");
  55.  
  56. while ($rekord=mysql_fetch_array($wynik)) {
  57.  
  58.  
  59. print "<a href=index.php?menu=3&op=viewfiles&nazwa_podkategori=" . $rekord['nazwa_podkategori'] . ">". $rekord['nazwa_podkategori']."</a><bR>";
  60. }
  61.  
  62.  
  63.  
  64.  
  65. }
  66.  
  67. ############ FUNKCJA Kategori #######
  68.  
  69. function kategoria() {
  70.  
  71.  
  72. $wynik=mysql_query("SELECT * FROM kategorie;");
  73.  
  74. while ($rekord=mysql_fetch_array($wynik)) {
  75. $nr=$rekord[0];
  76. $nazwa_kategori=$rekord[1];
  77. $opis_kategori=$rekord[2];
  78.  
  79.  
  80. print "<a href=index.php?menu=3&op=podkategoria&nazwa_kategori=". $rekord['nazwa_kategori'].">$nazwa_kategori</a><br>";
  81.  
  82.  
  83. }
  84.  
  85.  
  86. }
  87.  
  88.  
  89.  
  90. ########## Opcje Swith ######
  91.  
  92. switch($op) {
  93.  
  94.  case "getit":
  95.  getit($id);
  96.  break;
  97.  
  98.  case "viewfiles":
  99.  viewfiles($nazwa_podkategori);
  100.  break;
  101.  
  102.  
  103.  case "podkategoria":
  104.  podkategoria($nazwa_kategori);
  105.  break;
  106.  
  107.  default:
  108.  kategoria();
  109.  break;
  110. }
  111.  
  112. ?>


a jak mam taki kod to dziala poprawnie:

  1. <?php
  2. function getit($id) {
  3.  $query = "SELECT sciezka FROM download WHERE nr='$id'";
  4.  $wynik = mysql_query($query);
  5.  $row = mysql_fetch_array($wynik);
  6.  
  7.  Header("Location: ".$row['sciezka']);
  8.  
  9.  $query = "UPDATE download SET ilosc_pobran=ilosc_pobran+1 WHERE nr='$id'";
  10.  $wynik = mysql_query($query);
  11.  exit();
  12. }
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21. ############# Wzswietlenie plikow ####
  22.  
  23. function viewfiles() {
  24.  $query = "SELECT * FROM download";
  25.  $wynik = mysql_query($query);
  26.  
  27.  while($row = mysql_fetch_array($wynik)) {
  28.  echo "Plik: <a href=\"index.php?menu=3&op=getit&id=" . $row['nr'] . "\">" . $row['nazwa'] . "</a><br>";
  29.  
  30.  
  31.  }
  32.  
  33. }
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42. switch($op) {
  43.  
  44.  case "getit":
  45.  getit($id);
  46.  break;
  47.  
  48.  
  49.  
  50.  default:
  51.  viewfiles();
  52.  break;
  53. }
  54. ?>


co powinienem zmienic w tym pierwszym kodzie zeby dzialalo questionmark.gif? tongue.gif


jeszcze sql moge dozucic biggrin.gif
  1. --
  2. -- Struktura tabeli dla `kategorie`
  3. --
  4.  
  5. CREATE TABLE `kategorie` (
  6. `nr` int(11) NOT NULL AUTO_INCREMENT,
  7. `nazwa_kategori` text NOT NULL,
  8. `opis_kategori` text NOT NULL,
  9. PRIMARY KEY (`nr`)
  10. ) TYPE=MyISAM AUTO_INCREMENT=36 ;
  11.  
  12. --
  13. -- Struktura tabeli dla `podkategoria`
  14. --
  15.  
  16. CREATE TABLE `podkategoria` (
  17. `nr` int(11) NOT NULL AUTO_INCREMENT,
  18. `nazwa_podkategori` text NOT NULL,
  19. `opis_podkategori` text NOT NULL,
  20. `dla_kategori` text NOT NULL,
  21. PRIMARY KEY (`nr`)
  22. ) TYPE=MyISAM AUTO_INCREMENT=41 ;
  23.  
  24. --
  25. -- Struktura tabeli dla `download`
  26. --
  27.  
  28. CREATE TABLE `download` (
  29. `nr` int(11) NOT NULL AUTO_INCREMENT,
  30. `nazwa` text NOT NULL,
  31. `sciezka` text NOT NULL,
  32. `rozmiar` text NOT NULL,
  33. `data` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  34. `format` varchar(5) NOT NULL DEFAULT 'plik',
  35. `autor` varchar(10) NOT NULL DEFAULT '',
  36. `download_podkategorie` text NOT NULL,
  37. `opis_pliku` text NOT NULL,
  38. `ok` char(2) NOT NULL DEFAULT '2',
  39. `ilosc_pobran` int(11) NOT NULL DEFAULT '0',
  40. PRIMARY KEY (`nr`)
  41. ) TYPE=MyISAM AUTO_INCREMENT=33 ;
malvea
Przekierowanie, czyli Header("Location: ".$row['sciezka']); musi się odbyć zanim cokolwiek wyślietlisz na ekranie, więc z użyciem tego lepiej się pośpiesz i umieść je najwyżej jak się da.
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.