Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]Wartości option jako tabele z danej bazy danych
djsamiryi
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 11.04.2010

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


Witam. Mam problem z kodem który tworzyłby rozwijalną listę (select name, option) zgodnie z ilością tabel w danej bazie danych. Znalazłem tylko następujący kod:
  1. <?php
  2. function mysql($localhost, $root, $pass, $data){
  3. $link = mysql_connect($localhost, $root, $pass) or die('Błąd: Nie można połączyć z MySQL!');
  4. mysql_select_db($data) or die('Błąd: Nie można wybraż bazy danych!');
  5. }
  6.  
  7. ######### Pobieranie Danych #########
  8.  
  9. mysql('localhost', 'uzytkownik', 'haslo', 'baza');
  10. $zapytanie = mysql_query ("SELECT * FROM klienci ORDER BY id DESC");
  11.  
  12. echo '<select name="dane">';
  13. echo '<option value="">Wybierz Firmę</option>';
  14. while($option = mysql_fetch_assoc($zapytanie)) {
  15. echo '<option value="'.$option['id'].'">'.$option['nazwa_firmy'].'</option>';
  16. }
  17. echo '</select>';
  18. ?>

Ale nie mam pojęcia jak go zmodyfikować żeby czytał nie dane z tabeli, tylko dane o tabelach. Dodam też że nie mam information_schema w Bazie danych.

Baza danych na której pracuje nosi nazwę "testy"
każde z tabel mają nazwy roczników np. "2014", "2013", "2012" itd. Lista będzie pokazywała dostępne tabele. Po wybraniu chcę żeby odesłały mnie do stron które przedstawią wszystkie wyniki z tej tabeli. Ale z tym już sobie poradzę, problem tkwi w tym co opisałem wyżej. Z góry dziękuje bardzo za pomoc.

Ten post edytował djsamiryi 8.11.2014, 23:35:24
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
djsamiryi
post
Post #2





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 11.04.2010

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


Pokazało teraz nazwę pierwszej tabeli "2000", a następnych nie. Ilość <option> dalej się zgadza.
Obecnie kod wygląda tak:
  1. <?
  2. $zapytanie="SHOW TABLES FROM testy;";
  3. $res = mysql_query($zapytanie)
  4. or die("Invalid query: " . mysql_query());
  5.  
  6. echo '<label>Select value:</label>';
  7. echo '<select>';
  8. $dod = 0;
  9. while ($row = mysql_fetch_row($res))
  10. {
  11. $va = $row[$dod];
  12. echo "<option value='$va'>$va</option>";
  13. ++$dod;
  14. };
  15. echo '</select>';
  16. ?>


OK udało się. Wystarczylo zamiast tego $dod wstawić poporstu 0.
Obecny działający kod:
  1. <?
  2. $zapytanie="SHOW TABLES FROM testy;";
  3. $res = mysql_query($zapytanie)
  4. or die("Invalid query: " . mysql_query());
  5.  
  6. echo '<label>Select value:</label>';
  7. echo '<select>';
  8. while ($row = mysql_fetch_row($res))
  9. {
  10. $va = $row[0];
  11. echo "<option value='$va'>$va</option>";
  12. };
  13. echo '</select>';
  14. ?>

Dziękuje za pomoc.

PS. Wstawiam również kod (może komuś sie przyda....) już jako formularz.
  1. <?
  2. $zapytanie="SHOW TABLES FROM nazwa_bazy_danych;";
  3. $res = mysql_query($zapytanie)
  4. or die("Invalid query: " . mysql_query());
  5.  
  6. echo '<label>Wybierz rocznik:</label>';
  7. echo '<form method="post" action="nazwa_dokumentu_który_odbierze_dane_post">';
  8. echo '<select name="rok">';
  9. while ($row = mysql_fetch_row($res))
  10. {
  11. $va = $row[0];
  12. echo "<option value='$va'>$va</option>";
  13. };
  14. echo '</select>';
  15. echo '<input type="submit" value="Wyślij">';
  16. echo '</form>'
  17. ?>


Ten post edytował djsamiryi 11.11.2014, 14:30:34
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: 3.10.2025 - 16:53