Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z wyswietlaniem rekordów
Forum PHP.pl > Forum > Bazy danych > MySQL
mariuszzzzzz
witam wszystkich, mam nastepujacy problem.

Na mojej stronie posiadam wyszukiwarke z bazy danych. W wynikach wyszukiwania znajduja sie linki do szczegolowych informacji znajdujacych sie w rekordzie. Link wyglada tak:

  1. <?php
  2. <a href="http://www.myunterkunft.de/index1.php?p=obiekt&amp;o='.$wiersz['id'].'">'.$wiersz['nazwa'].'</a>
  3. ?>


po kliknieciu na niego pokazuje sie szczegolowy opis. Moj problem to jest ten ze od jakiegos czasu nie chce mi pokazac szczegolowych informacji rekordów ktore byly niedawno dodane. Stare rekordy pokazuje bez problemu.

Czy to ma zwiazek z id rekordu, bo rekordy do 299 pokazuje a od 300 juz nie.

Acha, jeszcze pokaze jak wyglada zapytanie:
  1. <?php
  2. $o = $_GET['o'];
  3. if ($_GET['p'])
  4.    {
  5.          $q="SELECT * FROM `obiekty` WHERE id='".$_GET['o']."'";
  6.            $r=mysql_query($q);
  7.            while ($wiersz = mysql_fetch_array($r))
  8.    {        
  9. ?>
Foxx
1. obejrzyj czy linki rekordów, które się niepoprawnie wyświetlają, mają prawidłową ostateczną postać (obejrzyj źródło strony)
2. zobacz czy nie ma żadnej wyraźnej różnicy między rekordami > 299 (musisz obejrzeć bezpośrednio zawartość bazy) - może ich tam wcale nie ma, może nie mają treści a tylko id...
3. wyświetl sobie zapytanie sql (echo $q;) przed wykonaniem go i zobacz czy nie pojawiają się w jego ostatecznej formie żadne błędy
4. zmień na
  1. <?php
  2. ?>
i zobaczysz czy nie masz błędu mysql (chociaż pewnie nie)
Wykonaj te kroki po kolei smile.gif
mariuszzzzzz
linki sa poprawne, roznicy nie my juz sprawdzalem w bazie, bledow zadnych nie poakzuje dlatego tez niewiem skad to sie bierze.
Foxx
Wykonałeś pkt. 3? Wyświetl sobie zapytania sql w przeglądarce, obadaj czy są poprawne.
Skopiuj je i wykonaj w np. phpMyAdminie i sprawdź czy coś zwracają. Oczywiście mówię o
tych dotyczących zapytań > 299
mariuszzzzzz
Cytat(Foxx @ 16.03.2009, 01:53:06 ) *
Wykonałeś pkt. 3? Wyświetl sobie zapytania sql w przeglądarce, obadaj czy są poprawne.
Skopiuj je i wykonaj w np. phpMyAdminie i sprawdź czy coś zwracają. Oczywiście mówię o
tych dotyczących zapytań > 299

a jak to zrobic? jak to zrobic w przegladarce a jak w phpmyadmin?
Foxx
  1. <?php
  2. echo $q="SELECT * FROM `obiekty` WHERE id='".$_GET['o']."'";
  3. ?>


Tak wyświetlisz zapytanie, sprawdź czy jest prawidłowe, wykonaj je w phpmyadminie i zobacz czy tam działa. Albo zapytanie jest złe, albo w bazie nie ma takich danych albo zapytanie zwraca wynik ale źle go obsługujesz - nie ma innego wyjścia.
mariuszzzzzz
w phpmyadmin nie idzie pisze takie tak:
SELECT *
FROM `obiekty`
WHERE id = '".$_GET['o ']."'
LIMIT 0 , 30

MySQL meldet:

#1064 - Something is wrong in your syntax obok 'o']."'
LIMIT 0, 30' w linii 1
erix
Bo musisz podstawić tę wartość. tongue.gif

~Foxx napisał, jak wyświetlić zapytanie. Właśnie to masz wklepać do PMA.
mariuszzzzzz
i tak zrobilem i bez problemu wyswietlil podany wpis czy nowy albo stary. Tak wiec gdzie moze lezec problem. Przeciez uzywam tego samego kodu do wyswietlenia starych i jak i nowych wpisow. A pomimo tego nowe sie nie pokazuja. wstydnis.gif
Foxx
Zrób tak:
  1. <?php
  2. $q="SELECT * FROM `obiekty` WHERE id='na_sztywno_wiecej_niz_299'";
  3. ?>

i zobacz czy nie otrzymasz wyniku.
mariuszzzzzz
w phpmyadmin pokazuje mi wszystkie wpisy nawet te nowe. ale skrypt na stronie juz nie pokazuje.
nospor
podsumowując: skrypt pokazuje ci dane tylko o starych rekordach, a PMA pokazuje ci dane o wszystkich rekordach.... no to wszystko jasne: skrypt łaczy sie do innej bazy a PMA do innej, do tej, do ktorej dodales nowe rekordy smile.gif
mariuszzzzzz
ojej ale gapa. No tak! Dziekuje za pomoc i zainteresowanie, dziala
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.