Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Problem z wyswietleniem wyników o podobnym ID
Forum PHP.pl > Forum > Przedszkole
pa-jong
Hej,

Mam taki problem..
kolumna ID w której:

id = " 00001234 " oraz
id = " 1234 "

wybierając z bazy pozycje o ID 0001234 czasami wyświetla wyniki ale z ID 1234..
dlaczego pomija te pierwsze zera ? czy jest jakiś sposób aby poprawnie wyświetlać wyniki z obu ID ?

pozdr.

wNogachSpisz
Jest jakiś szczególny powód dla którego przechowujesz liczby naturalne poprzedzone zerem?
To specyfika danych z którymi pracujesz, czy może ktoś poczuł się gorzej podczas projektowania bazy danych?
pa-jong
Tak, ID jest symbolem produktu w sklepie.
dane są z automatu wysyłane na serwer i aktualizowane w bazie.

do tej pory nie miałem z tym problemu wszystko działało jak należy,
obecnie zaistniała potrzeba "usprawnienia" aplikacji co niestety powoduje powższy problem :/

pobieram standardowo:

  1. $strSql = "SELECT id, nazwa, tytul, opis, cena_det,
  2. skl1, skl1Cena, skl2, skl2Cena, skl3, skl3Cena,
  3. (...)
  4. skl18, skl18Cena, skl19, skl19Cena, skl20, skl20Cena
  5. FROM baza
  6. WHERE id = ".$id;



wyświetlam :


  1. while ($arrRow = mysql_fetch_array($objRst))
  2. {
  3. (...)
  4.  
  5. echo '<h1><span class="tytul">'.StringToHTML($arrRow["tytul"]).'</span></h1>';
  6.  
  7. (...)
  8.  
Majkelo23
Jakie wartości ma pole `id` ?
pa-jong
wartości zwraca poprawnie
echo id wyświetla "00001234"

ale kiedy próbuje wyświetlić resztę zawartości poza ID to
albo wyświetla wartości 2x..
tzn tytuł o id = 00001234 oraz tytuł o id = 1234 lub miesza
np wyświetla id 00001234 ale juz tytuł o id = 1234

---
edit wynik ze strony..

ID $_GET = 00002678
ID BAZA = 02678

i zaraz pod spodem

ID $_GET = 00002678
ID BAZA = 00002678
sazian

  1. $strSql = "SELECT id, nazwa, tytul, opis, cena_det,
  2. skl1, skl1Cena, skl2, skl2Cena, skl3, skl3Cena,
  3. (...)
  4. skl18, skl18Cena, skl19, skl19Cena, skl20, skl20Cena
  5. FROM baza
  6. WHERE id = ".$id;




rozumiem że w takim wypadku id jest typu varchar lub innego tekstowego
a jeśli tak to daj


  1. $strSql = "SELECT id, nazwa, tytul, opis, cena_det,
  2. skl1, skl1Cena, skl2, skl2Cena, skl3, skl3Cena,
  3. (...)
  4. skl18, skl18Cena, skl19, skl19Cena, skl20, skl20Cena
  5. FROM baza
  6. WHERE id ='".$id."'";



Majkelo23
Pytam o typ/rodzaj, np. varchar, int, mediumint ?
pa-jong
varchar i oczywiście zadziałało... chyba te najprostsze sposoby są najtrudniejsze do znalezienia...

dzięki smile.gif
Majkelo23
Spróbuj tak jak napisał poprzednik - WHERE id ='".$id."'";
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.