Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jak wyciągnąć konkretne rekordy z bazy za poprzez pole typu VARCHAR?
bebzon_hc
post
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 1
Dołączył: 10.02.2011
Skąd: Rawicz

Ostrzeżenie: (0%)
-----


Witam!
Mam mały dylemat. Może ktoś ukierunkuje mnie jak to zrobić.

Docelowo chciałbym stworzyć formularz za pomocą którego chciałbym przyjmować zlecenia na reklamy. Jedno z pól formularza zlecenia to numer edycji gazety w której ma się ukazać reklama. Chciałbym, żeby wpisywanie numerów gazet wyglądało np. tak: 2;3;4;5;6;12;14;16;32;33;34;34;36 <- każda liczba to numer gazety w której ma ukazać się reklama z danego zlecenia (obecnie pole mam typu VARCHAR).

Mój dylemat zaczyna się w momencie gdy pomyślę sobie o przypadku gdy chciałbym wyciągnąć wszystkie zlecenia które zawierają numer np. 4 dla jednej konkretnej gazety (jest ich 5).

Do głowy przychodzi mi tylko jedna opcja... rozbić ciąg znaków (poprzez średnik - (IMG:style_emoticons/default/wink.gif) i stworzyć instrukcje w php która do każdej rozbitej liczby (numeru gazety) zrobi osobnego INSERT'a.
Tyle, że boję się jednak, że gdy będą zlecenia do 5 gazet np. na cały rok to wtedy jednym zleceniem program musiałby wykonać sporo tych INSERTÓW...

5 gazet * 52 numery w roku = 260 insertów na jedno zlecenie? ehhhh

P.S Myslałem sobie, żeby dla samych gazet stworzyć tablicę "tytuy_gazet" i połączyć ją z tablicą "zlecenia" wiele do wielu. Powstała by wówczas "tytuly_gazet_has_zlecenia" z której wyciągałbym sobie zlecenia poprzez gazety. Dałoby się również podpiąć pod "tytuly_gazet_has_zlecenia" dodatkową tablicę z numeracją gazet, ale to chyba nie w tę stronę zmierza. Ogólnie i tam trzebaby robic równie dużo instertów...

Jakies wskazówki?

Dziękuję z góry i pozdrawiam

Ten post edytował bebzon_hc 11.04.2012, 13:46:29
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
skowron-line
post
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Dużo lepiej by było jak byś miał osobną tabele w której łączył byś reklamę z gazetą.
Ale jeżeli już musisz mieć
Cytat
2;3;4;5;6;12;14;16;32;33;34;34;36

to niech to będzie
Cytat
;2;3;4;5;6;12;14;16;32;33;34;34;36;

wtedy wyszukiwanie numerów będzie wyglądało
  1. LIKE "%;4;%"
Go to the top of the page
+Quote Post
bebzon_hc
post
Post #3





Grupa: Zarejestrowani
Postów: 36
Pomógł: 1
Dołączył: 10.02.2011
Skąd: Rawicz

Ostrzeżenie: (0%)
-----


hmmmm...
chyba jakbym zrobił i połączył tabelę reklama z gazetą to znacznie zwiększył bym ilość rekordów i pracy człowiekowi któy by wprowadzał dane. Chcę za pomocą jednego zlecenia wrzucić wiele publikacji jednej reklamy jednego zleceniodawcy. (IMG:style_emoticons/default/smile.gif)

ale spodobał mi się pomysł z:
LIKE "%;4;%"

Jutro pobawię się chyba z tym bo chyba to powinno zadziałać.
Go to the top of the page
+Quote Post
skowron-line
post
Post #4





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Cytat(bebzon_hc @ 11.04.2012, 12:54:44 ) *
chyba jakbym zrobił i połączył tabelę reklama z gazetą to znacznie zwiększył bym ilość rekordów i pracy człowiekowi któy by wprowadzał dane

Wartość w polu input mogła by zostać taka sama 1;2;3;4 tylko byś to rozbijał i robil kilka insertów. A ładował do pola GROUP_CONCAT. No ale decyzja należy do ciebie.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 18:18