Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][html]Pole opcji i wykonanie zapytania mysql
puz219
post
Post #1





Grupa: Zarejestrowani
Postów: 201
Pomógł: 0
Dołączył: 1.07.2007

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


Witam.

mam tabelkę, do której wczytuję elementy z bazy sql.

Teraz chciałem sobie zrobić coś takiego, że w jednej kolumnie tabelki jest pole opcji (type="radio"), a pod tabelką przycisk Wykonaj.

I ma to działać na takiej zasadzie, jak zaznaczę pole i kliknę wykonaj, to wykonuje mi zapytanie mysql.

Z pierwszymi dwoma zadaniami się uporałem tzn. pole opcji w tabelce i przycisk poza nią, lecz w żaden sposób mi to nie działa.

Czy potrzebne są do tego formularze.

Proszę o pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
hondek
post
Post #2





Grupa: Zarejestrowani
Postów: 355
Pomógł: 50
Dołączył: 20.08.2007
Skąd: Częstochowa

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


Nie lape chyba do konca o co chodzi... ale wydaje mi sie ze formularz jest niezbedny - tak czy siak.
Go to the top of the page
+Quote Post
puz219
post
Post #3





Grupa: Zarejestrowani
Postów: 201
Pomógł: 0
Dołączył: 1.07.2007

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


faktycznie może to zbyt nieczytelnie napisałem.

Chodzi o to, ze chcę zaznaczyć pole opcji i jak kliknę w przycisk wykonaj, to żeby wykonywało zapytanie mysql dla konkretnego rekordu w bazie.

Jak coś takiego zrobić, bo ja już próbowałem na wszystkie sposoby (przynajmniej te, które znam) i nic nie dawało rezultatu
Go to the top of the page
+Quote Post
kossa
post
Post #4





Grupa: Zarejestrowani
Postów: 1 165
Pomógł: 9
Dołączył: 9.04.2002
Skąd: Toruń

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


Jeśli masz kod który nie do końca działa to go przedstaw, ktoś może zauważy i poprawi błąd. Pamiętaj o BBcode. Twój problem można rozwiązać na kilka sposobów. Nie wiem jak przesyłasz wartość z pota radio do zapytania a wszystkich możliwości nie ma sensu przytaczać, zatem - pokaż kod.

Łukasz
Go to the top of the page
+Quote Post
puz219
post
Post #5





Grupa: Zarejestrowani
Postów: 201
Pomógł: 0
Dołączył: 1.07.2007

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


funkcja, która jest pobiera dane z bazy

  1. <?php
  2. function fast_menu_opcje($zapytanie){
  3.  
  4. lacz_bd();
  5. $wynik=mysql_query($zapytanie);
  6. if(!$wynik){
  7. echo "Błąd. Połączenie nie powiodło się!";
  8. }
  9. $znalezionych=mysql_num_rows($wynik);
  10. echo "<a href=fast_menu_add_kreator.php>Dodaj pozycję</a>";
  11. echo "<form name=domyslne method=POST action=fast_menu_setdef.php>";
  12. echo "<table align=center border=1>";
  13. echo "<tr><td>ID</td><td>&nbsp;</td><td>Nazwa działu</td><td>Link do strony</td><td>Opcje</td></tr>";
  14.  
  15. for ($i=0; $i<$znalezionych; $i++){
  16. $wiersz=mysql_fetch_array($wynik);
  17.  
  18.  
  19. $select=$wiersz["select"];
  20. if($select==1){
  21. $select="checked=checked";
  22. }
  23. else{
  24. $select="";
  25. }
  26.  
  27. $id=$wiersz["fast_menuID"];
  28. echo "<tr><td>".$wiersz["fast_menuID"]."</td>";
  29. echo "<td><input type=radio name=id value=".$wiersz["fast_menuID"]." ".$select."/><input type=hidden name=nazwa_pozycji value=\"".$wiersz["nazwa"]."\"></td>";
  30. echo "<td>".$wiersz["nazwa"]."</td>";
  31. echo "<td>".$wiersz["link"]."</td>";
  32. echo "<td><small><a href=fast_menu_edit_kreator.php?fast_menuID=".$id.">[ edytuj ]</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href=fast_menu_delete_kreator.php?usun=".$id." onclick=\"return confirm('Czy na pewno chcesz usunąć wybraną pozycję?');\">[ usuń ]</a></small></td></tr>";
  33. }
  34. echo "</table><br>";
  35. echo "<input type=submit name=submit value=Ustaw&nbsp;jako&nbsp;domyślne></form><br>";
  36. }
  37. ?>


Plik, który jest odpowiedzialny, za wykonanie formularza
  1. <?php
  2. include_once("safe_admin.php");
  3. include_once("funkcje.php");
  4.  
  5. $id=$_POST['id'];
  6. $nazwa=$_POST['nazwa_pozycji'];
  7. $query = "UPDATE fast_menu SET select='1' WHERE fast_menuID='$id'";
  8. mysql_query($query);
  9.  
  10. ?>
  11.  
  12. <html>
  13. <head>
  14. <link rel="stylesheet" type="text/css" href="site_style.css">
  15. </head>
  16. <body>
  17. <p class="title">SZYBKIE MENU - POTWIERDZENIE</p><br>
  18. <?php
  19. echo "Udało się!!!<br>Pozycja <?php echo $nazwa; ?> została ustawiona jako domyślna.<br><br><a href=fast_menu.php>Powrót</a>";
  20. ?>
  21. </body>
  22. </html>
Go to the top of the page
+Quote Post
PanGuzol
post
Post #6





Grupa: Zarejestrowani
Postów: 353
Pomógł: 50
Dołączył: 28.07.2005
Skąd: Łaziska Górne

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


Domysle pole może być tylko jedno więc przed wykonanuiem zapytania
  1. <?php
  2. $query = "UPDATE fast_menu SET select='1' WHERE fast_menuID='$id'";
  3. ?>

wykonaj jeszcze zapytanie
  1. <?php
  2. $query = "UPDATE fast_menu SET select='0';
  3. ?>

Może to nie jest odpowiedź na twoje pytanie ale dobra rada ;]
Go to the top of the page
+Quote Post
hondek
post
Post #7





Grupa: Zarejestrowani
Postów: 355
Pomógł: 50
Dołączył: 20.08.2007
Skąd: Częstochowa

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


PanGuzol:
A mozesz wyjasnic po co sie wykonuje takie zapytanie?
Go to the top of the page
+Quote Post
PanGuzol
post
Post #8





Grupa: Zarejestrowani
Postów: 353
Pomógł: 50
Dołączył: 28.07.2005
Skąd: Łaziska Górne

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


Cytat(hondek @ 21.08.2007, 21:39:57 ) *
PanGuzol:
A mozesz wyjasnic po co sie wykonuje takie zapytanie?

Na podstawie tego pola wstawiany jest parametr checked w formularzu, jeśli kilka rekordów będzie miało taką wartość to kilka pól w formularzu będzie miało ten parametr.
A więc zanim zostanie zmieniona wartość dla nowego domyślnego pola powinien wszystkim rekordom ustawić wartość tej kolumny na 0.
Go to the top of the page
+Quote Post
hondek
post
Post #9





Grupa: Zarejestrowani
Postów: 355
Pomógł: 50
Dołączył: 20.08.2007
Skąd: Częstochowa

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


dzieki : - )
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:56