Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] [MySQL] jak stworzyc tablice z wybranych kolumn
Forum PHP.pl > Forum > Przedszkole
PawelW
Witam.
Zaczynam dopiero z PHP i staram się sam rozwiazywać problemy ale z tym nie mogę sobie poradzić.

Jest sobie baza a w niej tabela grupy która ma kolumny [ID, gr_sciezka, gr_nazwa]

Teraz funkcja łacząca z bazą wygląda tak
  1. <?php
  2. function connect_db_read()
  3. {
  4.  $db = new mysqli ('localhost', 'baza_read', 'haslo', 'projekt1'); // host, user, passwd, baza
  5.  if (mysqli_connect_errno())
  6.  {
  7. echo ' Błąd poaczenia z bazą';
  8.  }
  9.  return $db;
  10. }
  11. ?>


I funkcja która ma zczytywać bazę do tablicy
  1. <?php
  2. function create_edit_row_form()
  3. {
  4.  require_once 'smarty/Smarty.class.php';
  5.  connect_db_read();
  6.  
  7.  $zapytanie='SELECT * FROM `grupy`';
  8.  
  9.  $lacz = connect_db_read(); // łączenie z baz danych tylko do odczytu
  10.  $wynik_zapytania = $lacz->query($zapytanie); // Wynik zapytania zadanego bazie
  11.  
  12.  while ($opcje = $wynik_zapytania->fetch_array(MYSQLI_NUM))
  13.  {
  14.  $lista = array( "$opcje[0]" => "$opcje[2]");
  15.  
  16.  }
  17.  
  18.  print_r ($lista); //wstawione kontrolnie żeby zobaczyć wynik
  19. // Tu kod przekazujący wartosci do SMARTY
  20. }
  21. ?>


Teraz wynikiem print_r ($lista) jest ostani wiersz z tabeli z bazy np Array ( [6] => Ksiazki )
Jak zrobic żeby te wpisy się dodawały. Próbowałem z array_push ale nie udało mi się.

Jako wynik oczekuje tablicy assocjacujnej gdzie indeksem jest ID z tabeli a wartoscią gr_nazwa, tablica ta jest później przetwarzana przez SMARTY poleceniem {html_options name=grupy options=$lista}
webdice
Nie wiem czy dobrze zrozumiałem,

  1. <?php
  2. $lista[$opcje[0]] = $opcje[1];
  3. ?>
PawelW
Dziękuje :-) Tak to rozwiązuje mój problem.
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.