Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]zapis danych po , w mysql
Forum PHP.pl > Forum > Przedszkole
trucksweb
mam problem, gdyz potrzebuje zapisac w bazie danych id checkboxow ktore zostaly zaznaczone przez usera i nie bardzo wiem jak umiescic je w postaci: 1,3,5,7 (nie wazna kolejnosc) w jednym wierszu tabeli - zeby nie tworzyc oddzielnej tabeli i kolejnej relacji.
Ktos ma jakis pomysl jakby to najefektywniej wykonac ?
WojtasSP320
  1. <form action="index.php" method="post">
  2. <input type="checkbox" name="c1" value="1,">
  3. <input type="checkbox" name="c2" value="2,">
  4. <input type="checkbox" name="c3" value="3,">
  5. <input type="checkbox" name="c4" value="4,">
  6. <input type="checkbox" name="c5" value="5,">
  7. <input type="checkbox" name="c6" value="6,">
  8. <input type="checkbox" name="c7" value="7,">
  9. <input type="submit" value="OK">
  10. </form>


  1. <?php
  2.  
  3. $rekord ='';
  4. foreach ($_POST as $value) {$rekord.=$value;}
  5.  
  6. $rekord = rtrim($rekord,","); //do usuwania ostatniego przecinka
  7.  
  8. echo $rekord;
  9.  
  10. ?>


$rekord to string, który zapisujesz do bazy
trucksweb
a moglbym prosic jeszcze o podpowiedz jak je odczytac z bazy ?
chcialbym teraz zaznaczyc wszystkie checkboxy ktoych id sa zapisane w bazie np. 2,3,4
Zac
jeżeli dobrze zrozumiałem, ze chodzi ci o odczytanie wszystkich checkboxów z bazy to:

  1. $query="SELECT * FROM `tablea`";
  2. $send=mysql_query($query);
  3. while ($zwrot=mysql_fetch_array($send))
  4. {
  5. instrukcje...
  6. }


chyba, ze chcesz np. 1 kolumne odczytac tylko (w ktorej masz np checkboxy)
  1. $query="SELECT `checkbox` FROM `tabela`"; itd.
trucksweb
chyba nie zrozumiales pytania.
mam w bazie dane po , :

czyli jakas_tabela: 1,3,5,2,6

i teraz chcialbym odczytac te wartosci- zapisujac je najelepiej w tablicy, tak abym mogl foreachem przeleciec po tych wartoscicach izaznaczyc checkboxy ktorych id znajduja sie w jakas_tabela
guilty82
  1. <?php
  2. explode(',', $jakies_wartosci_z_tabeli);
  3. ?>
tomm
zrób tak jak napisał Zac tylko później rozbij ciąg '1,2,3,4' za pomocą explode()
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.