Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php+MySQL] Dodawanie do bazy JEDNEGO z trzech wybranych pól
Forum PHP.pl > Forum > Przedszkole
roobik
Witam!
Problem, o którym piszę, jest bardziej złożony, niż na początku mogłoby się wydawać - dlatego postanowiłem zasięgnąć rady, w jaki sposób to zrobić.
O co chodzi.
Wstępna* struktura tabeli:
id, text, plik, obraz
Założenia:
Użytkownik wybiera jeden z trzech wariantów dodania "czegoś" ** do bazy. W formularzu powinny zatem pojawić się 3 opcje typu "radio", które w zależności od tego "co" chce dodać użytkownik, będą dodawały informację w odpowiednie miejsce w tabeli.
I teraz tak:
a) jeśli wybrałby "radio" text to do tabeli zapisywane zostałyby informacje:
id oraz text
cool.gif jeśli wybrałby "radio" plik to do tabeli zapisywane zostałyby informacje:
id oraz plik
c) jeśli wybrałby "radio" obraz to do tabeli zapisywane zostałyby informacje:
id oraz obraz

Podczas, gdy samo dodanie do bazy nie sprawiłoby kłopotu, to większy problem stanowi odpowiednie wyświetlanie. Bo jeśli weźmiemy za przykład, że w tabeli są dwa rekordy:
1) '1, jakaś treść, , ,'
2) '2, , jakiś plik, '
to teraz jak to wyświetlić, by nie wywalało błędów (bowiem zawsze dwa pola będą puste)...
Wiadomo - inaczej wyświetlane byłyby teskty, inaczej pliki, a inaczej obrazy.


Nie oczekuję oczywiście gotowca (chociaż, jeśli ktoś by był na tyle uprzejmy...), lecz chociaż rady, w jaki sposób to zrobić lub cokolwiek, co przyczyniłoby się do rozwiązania problemu...

Z góry serdecznie dziękuję...
k_@_m_i_l
a dodajesz do pola wartość value questionmark.gif
To ma tak wyglądać :
  1. <input type="radio" name="group1" value="wartosc">Wartość<br />
  2. <input type="radio" name="group1" value="warotosc"> Wartość 2<br />
1010
  1. <?php
  2. $zap=mysql_query("SELECT * FROM tabela;");
  3. while($rek=mysql_fetch_array($zap))
  4. {
  5.  print $rek['id'].", ";
  6.  if(!empty($rek['text']))
  7.  {
  8. print $rek['text'].", ";
  9.  }
  10.  if(!empty($rek['plik']))
  11.  {
  12. print $rek['plik'].", ";
  13.  }
  14.  if(!empty($rek['obraz']))
  15.  {
  16. print $rek['obraz']."";
  17.  }
  18. }
  19. ?>
roobik
Ano racja smile.gif Nie dawałem tego...

Ok, czyli pozostała jeszcze ostatnia sprawa, a mianowicie wyświetlanie. Czyli byłoby coś takiego jak poniżej?
Kod
if text=... AND plik='' AND obraz='' {
wyświetl tylko text
}
if text='' AND plik=... AND obraz='' {
wyświetl tylko plik
}
if text='' AND plik='' AND obraz=... {
wyświetl tylko obraz
}

questionmark.gif
Co wstawić zamiast kropek?

//EDIT
Przepraszam... w trakcie pisania tego posta pojawiły się dwie odpowiedzi winksmiley.jpg

Więc zostaje tylko pytanie o wyświetlanie....
1010
!empty

Edit: w ogole powinieneś to zrobic tak:

  1. <?php
  2. if (!empty($text) AND empty($plik) AND empty($obraz)) {
  3. wy&#347;wietl tylko text
  4. }
  5. if(empty($text) AND !empty($plik) AND empty($obraz)) {
  6. wy&#347;wietl tylko plik
  7. }
  8. if (empty($text) AND empty($plik) AND !empty($obraz)) {
  9. wy&#347;wietl tylko obraz
  10. }
  11. ?>
roobik
Odpowiedzi pojawiają się w tempie błyskawicznym smile.gif

Czytałem właśnie o empty i if podane przez stickera
Wszystkim bardzo dziękuję. Sam bez Was nie dałbym rady!
...a jakby co - wrócę i napiszę jeszcze smile.gif

Dziękuję! Dziękuję bardzo!
Pozdrawiam!

(proszę nie zamykać tematu... jeszcze winksmiley.jpg )
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.