Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Zliczanie tabel za pomocą pętli
Forum PHP.pl > Forum > Przedszkole
Mostrom
Witam! Mam w bazie danych tabele, które tworzę na stronie w miarę potrzeb. Są to przykładwo `users`, `klasa_1`, `klasa_2` i `klasa_3`. Chciałbym, aby na menu nawigacyjne na stronie miało tyle pozycji ile jest tabel z prefixem klasa_, czyli w tym wypadku 3. Dodatkowo, te pozycje w menu muszą mieć nazwę z tego co jest za prefixem.
Myślę, że najlepiej będzie to robić za pomocą pętli for z użyciem tablic.
Jak to zrobićquestionmark.gif
kefirek
  1. SHOW TABLES WHERE Tables_in_NAZWA_BAZY REGEXP '^klasa_[:1-9:]'
Mostrom
Hmm może coś ja mam nie tak
  1. $query="SHOW TABLES WHERE Tables_in_dziennik REGEXP '^klasa_[:1-9:]'";
  2. mysql_query($query) or die (mysql_error());;
kefirek
No to dziwne bo u mnie działa.

  1. $result = mysql_query("SHOW TABLES WHERE Tables_in_dziennik REGEXP '^klasa_[:1-9:]'") or die (mysql_error());
  2. while ($data = mysql_fetch_assoc($result)){
  3. echo $data['Tables_in_test'].'<br>';
  4. }
Mostrom
dzięki już działa smile.gif

Jeszcze jedno. Potrzebuję mieć z tych wyników linki, dlatego wolałbym, żeby pokazywać je w pętli for. Ale może da się to zrobić inaczej? Napisałem coś takiego, co nei działa jak należy, bo do wszystkich elementów daje odnośnik do 0.php.
  1. $result = mysql_query("SHOW TABLES WHERE Tables_in_dziennik REGEXP '^klasa_[:1-9:]'") or die (mysql_error());
  2. while ($data = mysql_fetch_assoc($result)){
  3. $max=count($data);
  4. for($x=0;$x<$max;$x++){
  5. echo '<a href='.$x.'.php>'.$data['Tables_in_dziennik'].'<br>';
  6. }
  7. }

kefirek
  1. $result = mysql_query("SHOW TABLES WHERE Tables_in_dziennik REGEXP '^klasa_[:1-9:]'") or die (mysql_error());
  2. while ($data = mysql_fetch_assoc($result))
  3. {
  4. echo "<a href='".substr(strstr($data['Tables_in_dziennik'], '_'), 1).".php'>".$data['Tables_in_dziennik']."</a></br>";
  5. }
Mostrom
A czy nie wystarczy to?
  1. $result = mysql_query("SHOW TABLES WHERE Tables_in_dziennik REGEXP '^klasa_[:1-9:]'") or die (mysql_error());
  2. while ($data = mysql_fetch_assoc($result)){
  3. echo '<a href=/index.php?show='.$data['Tables_in_dziennik'].'>'.$data['Tables_in_dziennik'].'<br>';
  4. }
bastard13
Odpal sobie swój kod i kod, który wysłał ci kefirek i zobacz, czy ci wystarczy:)
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.