Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP] formularz + lista rozwijana
limonides
post
Post #1





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 30.05.2009

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


  1. <?php
  2. $query=" SELECT * FROM menu WHERE cat=\"tak\"";
  3. $result=mysql_query($query);
  4. $num=mysql_numrows($result);
  5. $i=0;
  6.  
  7. ?>
  8. <form method="POST" action="admin.php?newsy=dopisz">
  9. <table border="0" width="100%">
  10. <tr><td>
  11. <select name="kategorie" size="1">
  12. <?php
  13. while ($i < $num) {
  14. $id=mysql_result($result,$i,"id");
  15. $cat=mysql_result($result,$i,"cat");
  16. $nazwa=mysql_result($result,$i,"nazwa");
  17. echo "<option>$nazwa</option>";
  18. ++$i;
  19. }?>


mój problem jest nastepujący: w liście rozwijanej wyświetlam sobie nazwy kategorii ale po wysłaniu formularza chciałbym aby do bazy nie były zapisywane nazwy kategorii tylko ich ID.

pozdrawiam i z góry dziękuje za wszelaką pomoc.

Ten post edytował limonides 28.07.2010, 10:58:28
Go to the top of the page
+Quote Post
askone
post
Post #2





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

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


Tag <option> posiada atrybut [value], który to powinieneś ustawić na wartość jaką chcesz przekazać do skryptu...

Dokładniejsze info tutaj
Go to the top of the page
+Quote Post
Pawel_W
post
Post #3





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

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


to wyświetlanie też masz całkiem zrąbane, można o wiele prościej (IMG:style_emoticons/default/smile.gif)
  1. <?php
  2. $query= 'SELECT * FROM menu WHERE cat="tak"';
  3. $result=mysql_query($query);
  4. ?>
  5. <form method="POST" action="admin.php?newsy=dopisz">
  6. <table border="0" width="100%">
  7. <tr><td>
  8. <select name="kategorie" size="1">
  9. <?php
  10. while ($row = mysql_fetch_assoc($result)) {
  11. echo "<option>" . $row['nazwa'] . "</option>";
  12. }
  13. ?>

Go to the top of the page
+Quote Post
Lilo
post
Post #4





Grupa: Zarejestrowani
Postów: 33
Pomógł: 3
Dołączył: 22.03.2010

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


Kolega powyżej dobrze pisze, ja bym jeszcze bardziej skonkretyzowała zapytanie i zamiast cat="tak" zamieniła na cat='tak' .

  1. <?php
  2. $zapytanie ="SELECT id_cat, nazwa_cat FROM menu WHERE cat='tak'";
  3. $wynik = mysql_query($zapytanie, $polaczenie) or die ('Błąd: ' . mysql_error());
  4. while ($rekord = mysql_fetch_assoc($wynik)) {
  5. echo '<option value="'. $rekord['id_cat'] .'">' . $rekord['nazwa_cat'] . "</option>\n";
  6. }
  7. ?>
Go to the top of the page
+Quote Post
limonides
post
Post #5





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 30.05.2009

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


dziękuje wszystkim za cenne podpowiedzi i instrukcje.
działa pięknie tak jak chciałem
jeszcze raz dziękuje
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 - 01:50