Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql] mysql_fetch_assoc, malutenki problemik :-P
miyk
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 8.11.2006

Ostrzeżenie: (0%)
-----


Witam,

no wiec znowu nie widzialem jak nazwac temat (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
jesli ktos bedzie mial jakis pomysl to edytuje :-P

ok.

Problem polega na nie wyswietlaniu sie "tego czegos"

look (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

fragment index.php
  1. <?php
  2. $data = mysql_fetch_assoc($query)
  3. ?>


w bazie jest cat_id (numer kategori (1, 2, 3 itp (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ))

czyli

$data['cat_id'] wyswietla nr kategori, lapiecie ? :-)

i teraz mam cos takiego

fragment index.php
  1. echo '<br> -> ( ';
  2. echo cat_zmien($data['cat_id']);
  3. echo ' ) </h3></h5>';



oraz funckja cat_zmien
function cat_zmien($nr)
  1. <?php
  2. {
  3. if ($nr == 1)
  4. {
  5. echo 'Prywatne';
  6. }
  7.  
  8. if ($nr === 2)
  9. {
  10. echo 'Żywot';
  11. }
  12.  
  13. if ($nr === 3)
  14. {
  15. echo 'Szkoła';
  16. }
  17.  
  18. if ($nr === 4)
  19. {
  20. echo 'dsaz.pl';
  21. }
  22. }
  23. ?>


no i teraz problem :-\

nie zmienia... a nawet nie wyswietla sie nic :-(

gdy jest zamiast $data['cat_id'] np. 1 to zmienia normalnie
natomiast tak to nie ;-(

powie ktos dlaczego ? ;-P


pozdro,

Ten post edytował miyk 25.11.2006, 14:27:35
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
batman
post
Post #2





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




  1. <?php
  2. $result = mysql_query("zapytanie sql");
  3. $data = mysql_fetch_assoc($result);
  4. ?>


mysql_fetch_assoc
Go to the top of the page
+Quote Post
siemakuba
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 112
Pomógł: 20
Dołączył: 10.04.2005

Ostrzeżenie: (0%)
-----


Faktycznie, wątek nieszczególnie zatytułowany :)

Po pierwsze, dane liczbowe przekazane z mysql mają typ string, a ty porównujesz do liczby. Masz dwa wyjścia, zmienić porównanie tak:
  1. <?php
  2. if ($nr == '1')
  3. ?>
luba na początku funkcji zrzutować zmienną $nr na liczbę, tak:
  1. <?php
  2. $nr = (int)$nr;
  3. ?>


Po drugie, w kolejnych porównaniach używasz operatora ścisłego porównania, który sprawdza nie tylko wartość ale też typ danych. Możesz spokojnie zmienić === na ==.

P.S. dodałeś wątek podwójnie, sugeruje usunięcie jednego z nich.

pozdr.
Go to the top of the page
+Quote Post
miyk
post
Post #4





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 8.11.2006

Ostrzeżenie: (0%)
-----


kk
zrobione ;-)


thx dr_bonzo za rady,
thx siemakuba za wszystko (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ,
thx batman za checi ;-P


ps. nazwa poprawiona.
ps2. chyba do zamkniecia... ;-)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 10:42