Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]tablica asocjalna - wyciąganie konkretnych wyników
japolak
post
Post #1





Grupa: Zarejestrowani
Postów: 106
Pomógł: 0
Dołączył: 11.03.2007
Skąd: Łódzkie

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


witam

mam pewnie błachy problem z którym nie mogę sobie na tą chwilę poradzić

wrzucam sobie dane z bazy do tablicy :
z var_dumpa wyświetla mi coś takiego:


  1. var_dump($tablica);
  2.  
  3. array(3) {
  4. [0]=> array(4) { ["umeta_id"]=> string(1) "1" ["user_id"]=> string(1) "3" ["meta_key"]=> string(9) "firstname" ["meta_value"]=> string(6) "moje imie" }
  5. [1]=> array(4) { ["umeta_id"]=> string(1) "2" ["user_id"]=> string(1) "3" ["meta_key"]=> string(8) "lastname" ["meta_value"]=> string(5) "moje nazwisko" }
  6. [2]=> array(4) { ["umeta_id"]=> string(1) "3" ["user_id"]=> string(1) "3" ["meta_key"]=> string(4) "city" ["meta_value"]=> string(7) "moje miasto" } }
  7.  
  8.  


a moje pytanie jest takie
chciałbym przykładowo pobrać z tej tablicy daną która spełnia warunek meta_key=lastname
wynik powinien byc "moje nazwisko" [php][/php]

jak to zrobić (IMG:style_emoticons/default/questionmark.gif) ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
redeemer
post
Post #2





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

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


Możesz stworzyć tablicę asocjacyjną (a nie asocjalną (IMG:style_emoticons/default/wink.gif) ), gdzie kluczami będą wartości meta_key, czyli dla
  1. $sql="select * from user_meta where user_id='".$_SESSION['real_id']."' ";
możesz zrobić coś w stylu:
  1. ...
  2. $metakeys = array();
  3. foreach($rows as $row) {
  4. $metakeys[ $row['metakey'] ] = $row; // lub = $row['meta_value'] jeżeli potrzebujesz tylko par meta_key - meta_value
  5. }
Lub mając tą Twoją tablicę z pierwszego posta:
  1. $metakeys = array();
  2. for($i=0,$tablicaCount=count($tablica); $i<$tablicaCount; $i++) {
  3. $metakeys[ $tablica[$i]['meta_key'] ] = $tablica[$i]; // lub = $tablica[$i]['meta_value'] jeżeli potrzebujesz tylko par meta_key - meta_value
  4. }

Go to the top of the page
+Quote Post

Posty w temacie


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: 10.10.2025 - 18:05