![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 9.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
mam taki problem
na jednej stroie tworzy sie lista osob jest to robione petla i wyciagane z bazy danych sql wyglada to tak [php:1:9af2f9b989]<?php $link_id=db_connect(); if(!$link_id) die(sql_error()); $query = "select * from student"; $result = mysql_query($query) or die ("invalid query: " . mysql_error()); echo " <form method="post" action="usunstudenta.php""; while ($query_data = mysql_fetch_array($result)){ $imie=$query_data['stud_imie']; $studid = $query_data['studid']; echo "<tr><td width="2%"><input name="del[]" value="i" type="checkbox" ></td>"; "<input type="hidden">".$studid." "; echo "<td width="12%">".$studid."</td>"; echo "<td width="10 %">".$query_data['stud_nazwisko']."</td>"; echo "<td width="10 %">".$query_data['nr_indeksu']."</td>"; echo "<td width="10 %">".$query_data['rok_studiow']."</td>"; echo "<td width="10 %">".$query_data['semestr']."</td>"; echo "<td width="5%"><a href="index.php?file=listastudentow.php&action=edytuj&studid=$studid "> wyswietl</a></td></tr>"; } ?>[/php:1:9af2f9b989] i teraz na dole strony znajduje sie link ktory ma przekazac do tej samej strony tylko te pola przy ktorych zaznaczono checkboxa link wyglada tak Kod <a href="index.php?file=listastudentow.php&action=del&studid=<? $del[studid] ?>">Usun zaznaczonych</a></td>
przy czym del to funkcja ktora ma wyswietlic ta tabelke z osobami przy ktorych zaznaczono checkboxy. i wszystko sie dzieje na jednej stronie tej listastudentow ale to nie chce dzialac? czy zle skonstruowalem linka (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) czy cos innego ? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 165 Pomógł: 9 Dołączył: 9.04.2002 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
ten pierwszy form jest na 100% niepotrzebny, w drugim jest tylko zrob np.: tak: action=index.php?file=listastudentow.php
i w skrypcie pobieraj wartosc submit - czy usun, czy edytuj i wtedy wykonuj odpowiednia akcje Kossa ten pierwszy form jest na 100% niepotrzebny, w drugim jest tylko zrob np.: tak: action=index.php?file=listastudentow.php i w skrypcie pobieraj wartosc submit - czy usun, czy edytuj i wtedy wykonuj odpowiednia akcje Kossa ----------------------------------------------------------------- rozumiem ze ta funkcja to potwierdzenie usuwania bo jesli nie to naknociles (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) [quote="szymono"] //----------------------------------- to chyba tu nie potrzebne jest: html_header(); $link_id=db_connect(); //------------------------------------- for($i = 0; $i < count($multi_field); $i++) { if (isset ($multi_field[$i])) { $query = "select * from student where studid = $studid "; $result = mysql_query($query) or die ("invalid query: " . mysql_error()); while ($query_data = mysql_fetch_array($result)){ $studid=$query_data['studid']; $imie=$query_data['stud_imie']; $nazwisko=$query_data['stud_nazwisko']; $nr_indeksu=$query_data['nr_indeksu']; echo "<tr><td width="2%"><input name="multi_field[]" type="checkbox" checked></td>"; echo "<td width="12%">".$studid."</td>"; echo "<td width="12%">".$imie."</td>"; echo "<td width="10 %">".$nazwisko."</td>"; echo "<td width="10 %">".$nr_indeksu."</td>"; } } } echo "<input type="submit" value="usun"></form>"; } ?>[/php] majac teraz zanazczone wszystkie pola i wyswietlone tylko te wczesniej zaznaczone powinienesz jeszcze raz zrobic taka petle for i usunac wybrane rekordy namieszales z tymi formami powalcz z tym! Kossa ----------------------------------------------------------------- [php:1:e56c5d184d]<?php $res=mysql_query("select * from $table "); echo "<form method="post" action="index.php?section=newsletter&action=delete"> <input TYPE="submit" value="usuń zaznaczonych">"; while($row = mysql_fetch_array($res)) { $adres_id = $row["id"]; $e_mail = $row["adres"]; echo "<input type="checkbox" value='$adres_id' name="del[]">$e_mail<br>"; } echo "</form> if (action=="delete") { for ($x=0;$x<count($del);$x++) { $usun_id = $del[$x]; $Query = "DELETE FROM $table WHERE id=$usun_id"; $res = ExecSQL($Query); } } ?>[/php:1:e56c5d184d] mysle ze jest wszystko jasne (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ExecSQL - to funkcja wykonujaca zapytanie SQL qale to wiesz jak zrobic (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) kod dziala - szybko sobie newslettera przerobilem na jednym ze starych serwisow najpierw wyciagasz z bazy studentow i jest jeden form potem jesli akcja == delete to jest wykonywany kod usuwajacy to wszystko (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) mozesz sie pobawic z submit dodajac mu name i akcje wykonywac w zaleznosci od name powodzenia! Kossa ---------------------------------------------------------------- @kossa: NABIJANIU POSTOW MOWIMY STANOWCZO NIE ! (IMG:http://forum.php.pl/style_emoticons/default/angrysmiley.gif) (Za lamanie regulaminu jest ban !) Seth |
|
|
![]() ![]() |
![]() |
Aktualny czas: 18.10.2025 - 01:00 |