Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php+mysql]uproszczenie zapytań sql
Forum PHP.pl > Forum > PHP
miver
mam taki kod:

  1. <?php
  2.  
  3. $result1 = mysql_fetch_row(mysql_query("SELECT * FROM config WHERE name=language"));
  4. $result2 = mysql_fetch_row(mysql_query("SELECT * FROM config WHERE name=title"));
  5. $result3 = mysql_fetch_row(mysql_query("SELECT * FROM config WHERE name=date"));
  6. $result4 = mysql_fetch_row(mysql_query("SELECT * FROM config WHERE name=something"));
  7.  
  8.  
  9. ?>


struktura tabeli to dwie kolumny name i value. jak można zrobić pętle tak żeby pobrano całą zawartość tabeli i tak, żeby dane z value były dostępne z tablicy pod indeksem name? np. $result[language]?

dzięki za pomoc
miv.
marcio
Cytat
jak można zrobić pętle tak żeby pobrano całą zawartość tabeli

Jesli cie dobrze zrozumialem musisz uzyc petli while czyli
  1. <?php
  2. $query = ('SELECT * FROM config WHERE name=language'): 
  3. $result = mysql_query($query, $db);
  4.  
  5. while($dane = mysql_fetch_assoc($result)) {
  6. //tu wyswietlasz czy co tam chcesz 
  7. //odwolujesz sie tak
  8. $dane['language']
  9. $dane['title']
  10. }
  11. ?>

Etc ale nie wiem czy cie dobrze zrozumialem smile.gif
miver
ale teraz będę się mógł tylko odwołać do $dane[name] $dane[value] a nie $dane[title] czy $dane[language]
marcio
Tzn w jakim sensie??Teraz mozesz sie odwolywac do wszystkich kolumn z tabeli config

EDIT:WHERE name=language
Sorki nie zauwazylem ale language to nie kolumna tylko wartosc kolumna to name
phpion
Może tak:
  1. SELECT * FROM config WHERE name IN ("language", "title", "date", "something");

aczkolwiek nie do końca wiem co chcesz osiągnąć smile.gif
Piniek
Proszę o dodanie odpowiedniego tag-u do tematu.

Pozdrawiam
miver
chodzi mi o to aby z tabeli config wyciągnąć wszystkie pola i mieć do nich (do wartości value w każdym wierszu) dostęp z poziomu indeksu name w tablicy w tym wierszu.
Crozin
  1. <?php
  2. //połączenie z bazą
  3.  
  4. $config = array();
  5.  
  6. $result = mysql_query('SELECT * FROM config');
  7. while($r = mysql_fetch_array($result, MYSQL_ASSOC))
  8. $config[$r['name']] = $r['value'];
  9.  
  10.  
  11. //oto co masz w $config
  12. echo '<pre>' . print_r($config, 1) . '</pre>';
  13. ?>
miver
dzięki Crozin - zadziałało ;]
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.