Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]wybieranie jednego rekordu
Forum PHP.pl > Forum > Przedszkole
michu9010
witam mam problem z wyswietlaniem danych z rekordu.
mianowicie pisze skrypt wyporzyczalni i chce aby film zostal wyswietlony na podstawie klucza ktory zostal wygenerowany np. film?v=e67f3b3389a7ad0ba88962ad4c4a4ad0
i jesli ktos wejdzie to chcialbym aby film o tym kluczu sie wyswietlil lub zrocil blad nie ma takiego filmu lub cosw tym stylu ale nie moge wybrac rekordu po tym jednym polu....
ktos mi pomoze?
tu jest skrypt
  1. <?php
  2. session_start(); // rozpoczęcie sesji
  3.  
  4. include ("header.php");
  5. ?>
  6. <h2>&raquo; Oglądaj</h2>
  7. <div class="content">
  8. <?php
  9.  
  10.  
  11. include 'inc/db.php'; // połączenie się z bazą danych
  12. $tabela = 'wypozyczalnia'; // zdefiniowanie tabeli MySQL
  13. include 'inc/recaptchalib.php'; // dołączenie modułu reCAPTCHA
  14. $privatekey = "6LdArdESAAAAAClNITE-JmDd47dXTg5JU68_rp5_"; // prywatny klucz reCAPTCHA
  15. $publickey = "6LdArdESAAAAAFIpbEvO-hdMXg3TMhp1hjia8dw5"; // publiczny klucz reCAPTCHA
  16. $v=$_GET['zabezpieczenie'];
  17.  
  18. $sql = mysql_query("SELECT * FROM $tabela WHERE zabezpiecznie = '$v'");
  19. while($row = mysql_fetch_array($query)){
  20.  
  21. echo '
  22. <table width="31%" border="0" cellspacing="0" cellpadding="0">
  23. <tr>
  24. <td colspan="2">&nbsp;</td>
  25. </tr>
  26. <tr>
  27. <td colspan="2">&nbsp;</td>
  28. </tr>
  29. <tr>
  30. <td>&nbsp;</td>
  31. <td>&nbsp;</td>
  32. </tr>
  33. <tr>
  34. <td colspan="2">&nbsp;</td>
  35. </tr>
  36. </table>';
  37. }
  38.  
  39. ?>
  40.  
  41. </div>
  42. <?php include('footer.php'); ?>

a blad ukazuje mi sie taki
Warning: mysql_fetch_array() expects parameter 1 to be resource, null given in /home/michu/domains/michu.hdsi.pl/public_html/film.php on line 20
dzieki za pomoc
IProSoft
Podajesz mysql_fetch_array($query), a jako wskażnika użyłeś $sql....
-Porywacz-
  1. $query = mysql_query("SELECT * FROM $tabela WHERE zabezpiecznie = '$v'");
  2. while($row = mysql_fetch_array($query)){


Zmien na to, powinno byc dobrze tongue.gif
michu9010
poprawilem na
  1. <?php
  2. session_start(); // rozpoczęcie sesji
  3. /// Michał Jastrzębski
  4. include ("header.php");
  5. ?>
  6. <h2>&raquo; Oglądaj</h2>
  7. <div class="content">
  8. <?php
  9.  
  10.  
  11. include 'inc/db.php'; // połączenie się z bazą danych
  12. $tabela = 'wypozyczalnia'; // zdefiniowanie tabeli MySQL
  13. include 'inc/recaptchalib.php'; // dołączenie modułu reCAPTCHA
  14. $privatekey = "6LdArdESAAAAAClNITE-JmDd47dXTg5JU68_rp5_"; // prywatny klucz reCAPTCHA
  15. $publickey = "6LdArdESAAAAAFIpbEvO-hdMXg3TMhp1hjia8dw5"; // publiczny klucz reCAPTCHA
  16. $v = $_GET['zabezpieczenie'];
  17.  
  18. $wynik = mysql_query("SELECT * FROM $tabela WHERE zabezpieczenie=".$v."");
  19. if ($wynik) {
  20. $informacja = mysql_fetch_array($wynik);
  21.  
  22. echo '
  23. <table width="31%" border="0" cellspacing="0" cellpadding="0">
  24. <tr>
  25. <td colspan="2">&nbsp;</td>
  26. </tr>
  27. <tr>
  28. <td colspan="2">&nbsp;'.$informacja['tytul'].'</td>
  29. </tr>
  30. <tr>
  31. <td>&nbsp;</td>
  32. <td>&nbsp;</td>
  33. </tr>
  34. <tr>
  35. <td colspan="2">&nbsp;</td>
  36. </tr>
  37. </table>';
  38. }
  39.  
  40. ?>
  41.  
  42. </div>
  43. <?php include('footer.php'); ?>
ale nie wywietla danych
IProSoft
  1. $wynik = mysql_query("SELECT * FROM $tabela WHERE zabezpieczenie=".$v."");

powinno być
  1. $wynik = mysql_query("SELECT * FROM $tabela WHERE zabezpieczenie='".$v."'");

a najlepiej LIMIT 1

Poza tym sprawdź w bazie czy napewno dany rekord istnieje z danymi:
$v = $_GET['zabezpieczenie'];
michu9010
zmienilem ale nadal nie wyswietla tego co chce bo po id nie tylko po tym unkalnym kluczu
  1. -- phpMyAdmin SQL Dump
  2. -- version 3.4.10.2
  3. -- <a href="http://www.phpmyadmin.net" target="_blank">http://www.phpmyadmin.net</a>
  4. --
  5. -- Host: localhost
  6. -- Czas wygenerowania: 31 May 2012, 14:14
  7. -- Wersja serwera: 5.5.9
  8. -- Wersja PHP: 5.3.10
  9.  
  10. SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
  11. SET time_zone = "+00:00";
  12.  
  13.  
  14. /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
  15. /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
  16. /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
  17. /*!40101 SET NAMES utf8 */;
  18.  
  19. --
  20. -- Baza danych: `michu_wsinf`
  21. --
  22.  
  23. -- --------------------------------------------------------
  24.  
  25. --
  26. -- Struktura tabeli dla `wypozyczalnia`
  27. --
  28.  
  29. CREATE TABLE IF NOT EXISTS `wypozyczalnia` (
  30. `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  31. `tytul` varchar(100) COLLATE latin1_general_cs NOT NULL,
  32. `opis` varchar(100) COLLATE latin1_general_cs NOT NULL,
  33. `kod` varchar(30) COLLATE latin1_general_cs NOT NULL,
  34. `kolor` varchar(10) COLLATE latin1_general_cs NOT NULL,
  35. `temat` varchar(50) COLLATE latin1_general_cs NOT NULL,
  36. `informacje` varchar(1) COLLATE latin1_general_cs NOT NULL,
  37. `autostart` varchar(1) COLLATE latin1_general_cs NOT NULL,
  38. `rozmiar` varchar(3) COLLATE latin1_general_cs NOT NULL,
  39. `zabezpieczenie` varchar(50) COLLATE latin1_general_cs DEFAULT '0',
  40. `autor` varchar(100) COLLATE latin1_general_cs NOT NULL,
  41. `data` datetime NOT NULL,
  42. PRIMARY KEY (`id`)
  43. ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_cs AUTO_INCREMENT=7 ;
  44.  
  45. --
  46. -- Zrzut danych tabeli `wypozyczalnia`
  47. --
  48.  
  49. INSERT INTO `wypozyczalnia` (`id`, `tytul`, `opis`, `kod`, `kolor`, `temat`, `informacje`, `autostart`, `rozmiar`, `zabezpieczenie`, `autor`, `data`) VALUES
  50. (6, 'Pierwsze starcie', 'mot v3', 'MvbEL7EzO8w', 'white', 'dark', '1', '0', '360', 'e67f3b3389a7ad0ba88962ad4c4a4ad0', 'test', '2012-05-29 22:30:06');
  51.  
  52. /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
  53. /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
  54. /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

to zrzut bazy moze cos to 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.