Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql] checkbox i wyświetlanie odpowiednich danych z bazy
Forum PHP.pl > Forum > Przedszkole
pijanyadmin
Zakładając iż mam tabele
Kod
"user"
, w niej pola
Kod
"id" "login" "tel"
za pomocą formularza wyciągam te dane, ale chciałbym aby była możliwość wyświetlania np. "tel" tylko po zaznaczeniu w formularzu poprzez checkbox np. dla określonej grupy użytkowników, może mnie ktoś naprowadzić jak taki efekt uzyskać? Nowa tabela, czy da się to uzyskać odpowiednim zapytaniem?
nowotny
Cytat(pijanyadmin @ 8.02.2008, 11:47:57 ) *
za pomocą formularza wyciągam te dane, ale chciałbym aby była możliwość wyświetlania np. "tel" tylko po zaznaczeniu w formularzu poprzez checkbox np. dla określonej grupy użytkowników, może mnie ktoś naprowadzić jak taki efekt uzyskać? Nowa tabela, czy da się to uzyskać odpowiednim zapytaniem?

Jeszcze raz, ale tak abyśmy tym razem zrozumieli... winksmiley.jpg
pijanyadmin
w tabeli znajdują się dane

Kod
id | login | tel
1  | zenek | 039444555
2  | franek| 0000222


Zenek, odczytuje/wprowadza dane w formularzu, obok inputa który odpowiada za pole "tel" znajduje się checkbox, gdy go zaznaczy tel który wysłał do bazy będzie albo dostępny dla wszytkich, albo dla np. znajomego Franka. Pytanie, jak zrobić aby dane które zostały zaznaczone checkboxem były wyświetlane na jakiejś stronie. Jeśli Zenek uzna iż chce udostepnić tel komuś to poprostu odznaczy checkboxa
nowotny
No to musisz sobie dodać dodakową kolumnę typu boolowskiego w stylu "private_data"... jeśli ktoś nie chce pokazywać telefonu innym, to zaznacza checkbox a ty zapytaniem ustawiasz pole "private_data" na 1... a jak chce, to ustawiasz na 0... potem przy odzczytywaniu sprawdzasz sobie to pole i albo pokazujesz, albo nie...
pijanyadmin
rozkmińmy to bardziej:

prywata: "id" "login" "email" "gg"

formularz:

Kod
<form action="panel.php?gog=oe" method="POST">
email:<input type="text" name="email" value="<?php echo $email; ?>">prywatne: <input type="checkbox" name="email2"  value="1"><br />
gg:<input type="text" name="gg" value="<?php echo $gg; ?>"> prywatne: <input type="checkbox" name="gg2"  value="1"><br />

<input type="submit" value="zmien dane">


wysyłanie do bazy

  1. <?php
  2. $login = $_SESSION['login'];
  3.  $email = htmlspecialchars($_POST['email']);
  4.  $gg = $_POST['gg'];
  5.  
  6.  $email2 = htmlspecialchars($_POST['email2']);
  7.  $gg2 = $_POST['gg2'];
  8.  
  9.  
  10.  
  11. $query = mysql_query("UPDATE `userdata` SET `email`='$email', `gg`='$gg' WHERE login = '$login'");
  12.  
  13. $query2 = mysql_query("UPDATE `prywata` SET `email`='$email2', `gg`='$gg2' WHERE login = '$login'");
  14.  
  15.  
  16.  
  17.  if(!$query){
  18. echo 'blad';
  19. }
  20. else {
  21. echo 'rekord zaktualizowany';
  22. }
  23. ?>


tylko jak wysłać value 0 lub 1 z checkboxa do bazy prywata?
specialplan
  1. <?php
  2. $gg2 = !empty($_POST['gg2']) ? $_POST['gg2'] : 0;
  3. $email2 = !empty($_POST['email2']) ? $_POST['email2'] : 0;
  4. ?>
pijanyadmin
Kod
<input type="checkbox" name="box1" value="1" />


  1. <?php
  2. $login = $_SESSION['login'];
  3.  
  4. $box1 = !empty($_POST['box1']) ? $_POST['box1'] : 0;
  5.  
  6. $query = mysql_query("UPDATE `priv` SET `box1`='$box1' WHERE login = '$login'") or die(mysql_error());
  7. ?>


tylko że żadne dane nie są wysyłane do bazy...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.