Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql] mysql_fetch_assoc, malutenki problemik :-P
miyk
post 25.11.2006, 14:07:24
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 tongue.gif
jesli ktos bedzie mial jakis pomysl to edytuje :-P

ok.

Problem polega na nie wyswietlaniu sie "tego czegos"

look 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 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 25.11.2006, 14:11:41
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


--------------------
I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features.
Go to the top of the page
+Quote Post
siemakuba
post 25.11.2006, 14:13:31
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 25.11.2006, 14:29:09
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 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
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 07:59