Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] zapisywanie do tablicy
-dast-
post 3.04.2012, 19:08:25
Post #1





Goście







Witam, mam tabelę "pages_langs", w której trzymam tytuły podstron i inne wartości. Teraz chciałbym zrobić tak, żebym mógł przechowywać w tej tabeli tytuły podstron (meta titles) - dodałem pole page_title do tej tabeli.

Czy teraz jak zrobię sobie funkcje np.:
  1. function get_meta_title($page, $lang) {
  2. $meta_title = mysql_fetch_assoc(mysql_query("SELECT * FROM `pages_langs` WHERE `page_name` = '$page' AND `page_lang` = '$lang'"));
  3. return $meta_title['page_title'];
  4. }

+ w index.php:
  1. <title><?php echo get_meta_title($page, $lang); ?></title>

i chciałbym teraz dodać do tej funkcji, żeby pobierało mi wszystkie meta tagi, czyli słowa kluczowe, description no i title.

Jak mogę przerobić funkcje, żeby za każdym razem nie pobierała z osobna po jednej wartości, tylko naraz całość?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
-dast-
post 3.04.2012, 20:25:07
Post #2





Goście







nikt nie pomoże? blink.gif
Go to the top of the page
+Quote Post
Lorum3
post 3.04.2012, 20:27:02
Post #3





Grupa: Zarejestrowani
Postów: 86
Pomógł: 5
Dołączył: 10.12.2011
Skąd: Poznań

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


Przecież to zapytanie pobiera Ci cały rekord.
Go to the top of the page
+Quote Post
Niktoś
post 3.04.2012, 20:44:04
Post #4





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Spróbuj zwrócić całą tablicę:
  1. [php]function get_meta_title($page, $lang) {
  2. $meta_title = mysql_fetch_assoc(mysql_query("SELECT * FROM `pages_langs` WHERE `page_name` = '$page' AND `page_lang` = '$lang'"));
  3. return $meta_title;
  4. }


  1. <title><?php foreach( get_meta_title($page, $lang) as $value ){
  2. echo $value.page_title;
  3. } ?></title>


Nie wiem czy tą pętlę dobrze skonstruowałem,jak coś to poprawcie closedeyes.gif

Ten post edytował Niktoś 3.04.2012, 20:42:29
Go to the top of the page
+Quote Post
Lorum3
post 3.04.2012, 20:51:15
Post #5





Grupa: Zarejestrowani
Postów: 86
Pomógł: 5
Dołączył: 10.12.2011
Skąd: Poznań

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


Ta pętla już zupełnie nie potrzebna, funkcja zwraca tablicę asocjacyjną.
Go to the top of the page
+Quote Post
Niktoś
post 3.04.2012, 20:58:14
Post #6





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Cytat
Ta pętla już zupełnie nie potrzebna, funkcja zwraca tablicę asocjacyjną.

A jak chcesz wydobyć wartości wszystkich kluczy z tej tablicy,i wyświetlić je nie używając pętli?

Ten post edytował Niktoś 3.04.2012, 20:59:39
Go to the top of the page
+Quote Post
-Gość-
post 3.04.2012, 21:02:36
Post #7





Goście







O czymś takim właśnie myślałem, ale taką pętle będę musiał dać w kilku miejscach, bo np. jest title, później keywords, później description itd...

Zrobiłem na razie tak bo lepszego rozwiązania nie znam biggrin.gif
  1. function get_meta($rewrite, $lang, $param) {
  2. $meta = mysql_fetch_assoc(mysql_query("SELECT * FROM `pages_langs` WHERE `page_rewrite` = '$rewrite' AND `page_lang` = '$lang'"));
  3. return $meta[$param];
  4. }

  1. <title><?php echo get_meta($page, $_SESSION['lang'], 'page_title'); ?></title>
Go to the top of the page
+Quote Post
Niktoś
post 3.04.2012, 21:09:47
Post #8





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Nie wiem już w ogóle ile wierszy z bazy danych będzie zwracanych z zapytania SQL w tej funkcji?Bo jeśli jeden wiersz(rekord) to można się bawić Twoim sposobem,jeśli więcej to i tak będziesz musiał użyć pętli.
Go to the top of the page
+Quote Post
-Gość-
post 3.04.2012, 22:06:44
Post #9





Goście







Nie więcej jak 5, a tak wygląda cała tabela:

page_id | page_lang | page_name | page_content | page_title | page_rewrite

w meta title chcę mieć nazwę aktualnej podstrony czyli page_title.
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 - 12:14