Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> POBRAĆ NAZWY TABELI Z BAZY I WYŚWIETLIĆ JE W POLU <SELECT
Berni
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 8.10.2002

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


Mam następujący problem: jestem w trakcie pisania magazynu produktów, w magazynie znajduje się opcja DODAJ KATEGORIE ( kateg. produktów np rowery i skarpety (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ), nastepnie przechodzimy do opcji DODAJ POZYCJE, w ktorej znajduje sie pole <SELECT> poprzez, ktore wybieram do jakiej kategorii ( tabeli ) chcem dodac rekord....i tu sie zaczyna problem. Jak wstawić nazwy tabel z bazy do pola <SELECT> zeby miec mozliwosc wyboru kategorii przy dodawaniu produktu hmmm??
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
dob
post
Post #2





Grupa: Zarejestrowani
Postów: 166
Pomógł: 0
Dołączył: 30.01.2003
Skąd: Warszawa

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


Jeżeli dobrze zrozumiałem to chodzi ci o to :
[php:1:74d6ac2150]<select size="1" name="tabele">
<?php
mysql_connect('serwer', 'user', 'haslo') or die('Nie można się połączyć');

$result = mysql_list_tables('baza');

while ($row = mysql_fetch_row($result)){
echo "<option value='".$row[0]."'>".$row[0]."</option>";
}

mysql_free_result($result);
?>
</select>[/php:1:74d6ac2150]

p.s. czytaj manuala
Go to the top of the page
+Quote Post
Berni
post
Post #3





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 8.10.2002

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


dzieki stary, jestes wielki
Go to the top of the page
+Quote Post
Berni
post
Post #4





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 8.10.2002

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


hmmmm ale chciałbym zrozumieć ten kod...pomożesz?
Go to the top of the page
+Quote Post
dob
post
Post #5





Grupa: Zarejestrowani
Postów: 166
Pomógł: 0
Dołączył: 30.01.2003
Skąd: Warszawa

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


Cytat
dzieki stary, jestes wielki

Spoko (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) w sumie fakt mam 193 cm wzrostu (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Wyjasnienie :
Połączenie z serwerem Mysql - podajesz adres serwera mysql, uzytkownika oraz haslo do konta. W przypadku błędu skrypt zostanie zatrzymany i wyswietli napis Nie można się połączyć
[php:1:b6e252deef]<?php
mysql_connect('serwer', 'user', 'haslo') or die('Nie można się połączyć');
?>[/php:1:b6e252deef]
Pobierasz do zmiennej wynik pobierania listy tabel z bazy
[php:1:b6e252deef]<?php
$result = mysql_list_tables('baza');
?>[/php:1:b6e252deef]
Za pomocą pętli while wyswietlasz kod html wraz z nazwami tabel - tyle razy ile jest tabel w podanej bazie
[php:1:b6e252deef]<?php
while ($row = mysql_fetch_row($result)){
echo "<option value='".$row[0]."'>".$row[0]."</option>";
}
?>[/php:1:b6e252deef]
Zwalnia pamięć zajmowaną przez wynik
[php:1:b6e252deef]<?php
mysql_free_result($result);
?>[/php:1:b6e252deef]

Nie umiem tłumaczyc lepiej poczytaj manuala - tam znajdziesz lepszy niż moj opis kazdej użytej tu funkcji
Go to the top of the page
+Quote Post
Berni
post
Post #6





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 8.10.2002

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


no i kolejny problem...mianowicie musze utworzyc wybranej za pomoca tego pola tablicy wartosci z formularza. Rozumiem, ze musze stworzyć plik ktory mi to wykona, zamiast sztywnej nazwy tabeli musze uzyc zmiennej...ale jak tą zmienną zdobyć
Go to the top of the page
+Quote Post
Kinool
post
Post #7





Grupa: Zarejestrowani
Postów: 560
Pomógł: 0
Dołączył: 15.07.2003
Skąd: Kwidzyn

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


jesli korzystasz z powyszego przykladu jaki podal dob

[php:1:39b09d03a0]
<select size="1" name="tabele">
<?php
mysql_connect('serwer', 'user', 'haslo') or die('Nie można się połączyć');

$result = mysql_list_tables('baza');

while ($row = mysql_fetch_row($result)){
echo "<option value='".$row[0]."'>".$row[0]."</option>";
}

mysql_free_result($result);
?>
</select>
[/php:1:39b09d03a0]

to nazwa tabeli znajduje sie w zmiennej $tabele pewnie bedziesz korzystal z POST-a do przeslania jej z formularza wiec jest ona w $_POST[tabela]

jak chesz utworzy potem jakies zapytanie do bazy dotyczace tej tabeli to np.

[php:1:39b09d03a0]<?php
$query="SELECT * FROM ".$_POST[tabela]." WHERE costam=1";
?>[/php:1:39b09d03a0]

chyba o to ci chodzilo bo niewiem czy dobrze zrozumialem

PS
DOBRANOC (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
Berni
post
Post #8





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 8.10.2002

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


dzieki chlopy, w realu raczej nikt by nie wytlumaczyl tego znajac zycie, jeszczeraz dzieki (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
gugas
post
Post #9





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 20.01.2009

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


Witam!!

Temat troche stary ale mam z nim pewien problem. Otoz robilem skrypt na powyzszym przykladzie, wszystko ladnie pobiera z bazy(nazwy tabel), ale dopisalem jeszcze kawalek kodu ktory ma mi wyswietlac zawartosc danej tabeli. Wyswietla, tylko jest problem z odswiezaniem pola select. Gdy wybiore tabele z listy, np. pozycje 2 lub 3 to po wyswietleniu zawartosci tabeli nazwa tabeli w polu select zmieni sie domyslnie na pierwsza w kolejnosci. Chcialbym natomiast zeby pozostala wlasnie ta ktora wybralem.

Kod:
CODE

<form method="post" action="" >
<tr>
<td>Dostepne kursy:</td>
<td><select size="1" name="kursy" onchange="this.form.submit();" >
<?
$sql_conn = @mysql_connect('---', '---', '----') or die('Nie mozna sie polaczyc.Blad!!!');

$result = mysql_list_tables('-----');
$num = mysql_num_rows($result);
if ($num >0) {

while ($row = mysql_fetch_row($result)){

echo "<option value='".$row[0]."'>".$row[0]."</option>";
}
}


?>
</select>
</td>
</tr>
<?

echo '<link rel=stylesheet href="css.css" type="text/css">';

$sql_conn = @mysql_connect('----', '----', '----') or die('Nie mozna sie polaczyc.Blad!!!');

mysql_select_db('-----');
$kursy = trim(strip_tags($_POST['kursy']));
$zapytanie = "SELECT `id`,`imie`,`nazwisko`,`adresat` FROM ".$kursy." WHERE `potwierdzony`='t' ORDER BY `id` ASC";
$idzapytania = mysql_query($zapytanie);
print ("Tabelka zawierajaca potwierdzone dane:\n");

print '<table>';
while ($wiersz = mysql_fetch_row($idzapytania))
{
echo '<tr><td class=tb1>'.
$wiersz[0] . '</td><td class=tb3>'.
$wiersz[1] .'</td><td class=tb2>'.
$wiersz[2] .'</td><td class=tb4>'.
$wiersz[3] .'</td><td class=tb5>'.
$wiersz[4] .'</td></tr>';
}

?>

Z gory dzieki za pomoc.

Ten post edytował gugas 20.01.2009, 17:52:41
Go to the top of the page
+Quote Post

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: 23.08.2025 - 06:57