Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam! Mam taki skrypt wyświetlający mi zawartość danych z bazy do których dołączyłem
checkboxa z name'em równym id określonych danych. Wygląda on tak:
<?php mysql_connect ("localhost","root","haslo"); mysql_select_db (baza); $zapytanie = "SELECT * FROM table_name "; $wykonaj = mysql_query($zapytanie); $i=1; while($wiersz=mysql_fetch_array ($wykonaj)) { echo " <tr><td width=3% bgcolor=#fff><center><input type=checkbox name=1 value=".$wiersz['id']."></center></td><td width=3% bgcolor=#fff><center>".$i."</center></td><td width=14% bgcolor=#fff><center>".$wiersz['nr']."</center></td> <td width=12% bgcolor=#fff><center>".$wiersz['imie_nazwisko']."</center></td> <td width=8% bgcolor=#fff><center>".$wiersz['waznosc']."</center></td> <td width=10% bgcolor=#fff><center>".$wiersz['data']."</center></td> <td width=10% bgcolor=#fff><center>".$wiersz['przyczyna']."</center></td> <td width=8% bgcolor=#fff><center>".$wiersz['rodzaj']."</center></td> <td width=21% bgcolor=#fff><center>".$wiersz['test']."</center></td></tr>"; $i++; } ?> <input style="width: 100%; height: 7mm;" type="submit" value="Generuj" onclick="document.formularz.action='table.php';document.formularz.submit();"/>
No i fajnie mi wszystko wyświetla!
Mam 7 pozycji i wiadomo cały czas baza się rozrasta w zależności od wypełniania danymi.
Ale problem w tym że chciałbym po zaznaczeniu danego checkboxa i kliknięciu w przycisk
aby wyświetliły mi się na kolejnej stronie wszystkie dane zawarte obok tego checkboxa.
Chciałem to zrobić za pomocą dowiązania do id z checboxa. Ale ma ktoś jakiś pomysł
jak to zrobić??
Ostatnio edytowany przez debbie (2009-08-19 17:09:20)
Offline
OK! Już do tego doszłem:
<?php
$ide=$_GET['dana'];
mysql_connect ("localhost","root","haslo");
mysql_select_db (baza);
$zapytanie = "SELECT * FROM table_name where id='$ide'";
$wykonaj = mysql_query($zapytanie);
$i=1;
while($wiersz=mysql_fetch_array ($wykonaj))
{ echo " <tr><td width=5% bgcolor=#fff><center>".$i."</center></td><td width=18% bgcolor=#fff><center>".$wiersz['nr']."</center></td><td width=5% bgcolor=#fff><center>".$wiersz['imie_nazwisko']."</center></td> <td width=11% bgcolor=#fff><center>".$wiersz['rodzaj']."</center></td> <td width=4% bgcolor=#fff><center>".$wiersz['przyczyna']."</center></td> <td width=8% bgcolor=#fff><center>".$wiersz['test']."</center></td>
</tr>";
$i++;
}
?>
I gra!!
Ale co zrobić żeby po zaznaczeniu dwóch checkboxów i kliknięciu w przycisk pokazały mi się
w wyniku 2 wiersze??
Offline
Niezły klin co nie???? hehe:)
Offline
<form action="" method=""> <?php while($row){ ?> <input type="checkbox" name="id[]" value="<?=$row['id']?>"> Czat nr <?=$i?><br /> <?php } ?> <input type="submit" /> </form>
name[] = array()
powinienies sobie poradzic :)
Offline
hmmm nie bardzo rozumię?? A w nawiązaniu do mojego kodu?? Bo jak widzisz - przy while'u mam kod dla mysql
while($wiersz=mysql_fetch_array ($wykonaj))
{ echo " <tr><td width=3% bgcolor=#fff><center><input type=checkbox name=dana value=".$wiersz['id'].">....
Ostatnio edytowany przez debbie (2009-08-20 12:28:12)
Offline
OK! Już kumam!! Ale jak ma wyglądać kod wyjściowy?? Bo nie potrafię tego wyświetlić ani for'em ani while'm
Mam to:
<?php
$ide=$_GET['dana'];
mysql_connect ("localhost","root","haslo");
mysql_select_db (baza);
$zapytanie = "SELECT * FROM table_name where id='$ide'";
$wykonaj = mysql_query($zapytanie);
$i=1;
while($wiersz=mysql_fetch_array ($wykonaj))
{ echo " <tr><td width=5% bgcolor=#fff><center>".$i."</center></td><td width=18% bgcolor=#fff><center>".$wiersz['nr']."</center></td><td width=5% bgcolor=#fff><center>".$wiersz['imie_nazwisko']."</center></td> <td width=11% bgcolor=#fff><center>".$wiersz['rodzaj']."</center></td> <td width=4% bgcolor=#fff><center>".$wiersz['przyczyna']."</center></td> <td width=8% bgcolor=#fff><center>".$wiersz['test']."</center></td>
</tr>";
$i++;
}
?>
Jak widać dla podanego id wyświetla mi dane. A id mam powiązane z danymi z wcześniejszego pliku no i ok!!
Tylko jak zaznaczę 2 checkboxy to lipa.:(
Bo rozumiecie - jak bym mu wstawił:
for ($i=1; $i<9; $i++)
{
$ide=$_GET['dana'][$i];
}
(np 9 bo w sumie to mógłbym zliczać zaznaczone checkboxy i zamiast 9 wrzucać je tam w zmiennej - ale to inna bajka )
To nic nie wyświetli - wiadomo - bo nie znajdzie takiego id w bazie!! Także nie wiem jak to przełknąć??? Może inaczej sformułować zapytanie??
Ostatnio edytowany przez debbie (2009-08-20 17:57:35)
Offline
DOKŁADNIE TAK JAK NAPISAŁEŚ - POWINIENEM SOBIE PORADZIĆ!!!:))
Było prościej niż kombinowałem ( jak zwykle )
<?php
$ide=$_GET['dana'][0];
$ide1=$_GET['dana'][1];
$ide2=$_GET['dana'][2];
$ide3=$_GET['dana'][3];
mysql_connect ("localhost","root","haslo");
mysql_select_db (baza);
$zapytanie = "SELECT * FROM table_name where id='$ide' OR id='$ide1' OR id='$ide2' OR id='$ide3'";
$wykonaj = mysql_query($zapytanie);
$i=1;
while($wiersz=mysql_fetch_array ($wykonaj))
{ echo " <tr><td width=5% bgcolor=#fff><center>".$i."</center></td><td width=18% bgcolor=#fff><center>".$wiersz['nr']."</center></td><td width=5% bgcolor=#fff><center>".$wiersz['imie_nazwisko']."</center></td> <td width=11% bgcolor=#fff><center>".$wiersz['rodzaj']."</center></td> <td width=4% bgcolor=#fff><center>".$wiersz['przyczyna']."</center></td> <td width=8% bgcolor=#fff><center>".$wiersz['test']."</center></td>
</tr>";
$i++;
}
?>
Może się komuś przyda:)
Offline