Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][SQLite]Sqlite, PDO a div'y - oszczędźcie nieprzespanej nocy
arstherapia
post
Post #1





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Bracia, Obywatele, Towarzysze,

oszczędźcie mi proszę nieprzespanej nocy.

Otwieram sobie bazę i listuję jej zawartość:

  1. <?php
  2. try
  3. {
  4. $db = new PDO('sqlite:arstherapia.sqlite');
  5.  
  6. $result = $db->query('SELECT * FROM filmy');
  7. foreach($result as $row)
  8. {
  9.  
  10. print "<p>".$row['Nazwa']."</p>";
  11. print "<p>".$row['Opis']."<,p>";
  12. print "<p>".$row['Wersja']."</p>";
  13. }
  14.  
  15. $db = NULL;
  16. }
  17. catch(PDOException $e)
  18. {
  19. print 'Exception : '.$e->getMessage();
  20. }
  21. ?>


Wiem, jak umieścić te dane w tabeli:

  1. print "<table border=1>";
  2. print "<tr><td>Nazwa</td><td>Opis</td><td>Wersja</td></tr>";
  3. $result = $db->query('SELECT * FROM filmy');
  4. foreach($result as $row)
  5. {
  6.  
  7. print "<tr><td>".$row['Nazwa']."</td>";
  8. print "<td>".$row['Opis']."</td>";
  9. print "<td>".$row['Wersja']."</td></tr>";
  10. }
  11. print "</table>";


ale za cholerę nie wiem, jak umieścić poszczególne rzędu w rzędach i kolumnach bootstrapa.

Pomożecie?(IMG:style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
3 Stron V   1 2 3 >  
Start new topic
Odpowiedzi (1 - 58)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Ja to bym i nawet jak chcial pomoc to nie mam zielonego pojecia o czym piszesz:
Cytat
ale za cholerę nie wiem, jak umieścić poszczególne rzędu w rzędach i kolumnach bootstrapa.

chyba ze oczekujesz tylko pomocy od "wtajemniczonych" (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
arstherapia
post
Post #3





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(nospor @ 27.08.2014, 20:10:55 ) *
Ja to bym i nawet jak chcial pomoc to nie mam zielonego pojecia o czym piszesz:

chyba ze oczekujesz tylko pomocy od "wtajemniczonych" (IMG:style_emoticons/default/wink.gif)


Już się poprawiam:

  1. <div class="row">
  2.  
  3. <div class="col-lg-4">
  4. ( tutaj nazwa1 )
  5. </div>
  6.  
  7. <div class="col-lg-4">
  8. ( tutaj opis1 )
  9. </div>
  10.  
  11. <div class="col-lg-4">
  12. ( tutaj wersja1 )
  13. </div>
  14.  
  15. </div>
  16.  
  17. <div class="row">
  18.  
  19. <div class="col-lg-4">
  20. ( tutaj nazwa2 )
  21. </div>
  22.  
  23. <div class="col-lg-4">
  24. ( tutaj opis2 )
  25. </div>
  26.  
  27. <div class="col-lg-4">
  28. ( tutaj wersja2 )
  29. </div>
  30.  
  31. </div>


Mam nadzieję, że to brakujące informacje.
Go to the top of the page
+Quote Post
by_ikar
post
Post #4





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Jemu pewnie chodzi o ten bootsrap a kolumny to miał pewnie na myśli gridsystem: http://getbootstrap.com/css/#grid-example-basic jak napiszesz dokładniej o co tam chodzi, to może będę mógł pomóc. Bo też nie do konca rozumiem o co ci chodzi.
Go to the top of the page
+Quote Post
nospor
post
Post #5





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Masz taki fajny avatar... spojrz na niego czasami... (IMG:style_emoticons/default/tongue.gif)

Przeciez to co chcesz zrobic to jest identyczne z tym, w jaki sposob wyswietlasz swoje dane w tabeli z pierwszego posta.... To jest dokladnie to samo, tylko zamiast TR TD walisz swoje divy....
Go to the top of the page
+Quote Post
by_ikar
post
Post #6





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


No minutę po tym jak napisałem to odpisałeś. Tak by to mogło mniej więcej wyglądać.

  1. <?php
  2.  
  3. $result = $db->query('SELECT * FROM filmy');
  4.  
  5. foreach($result as $row)
  6. {
  7. echo '
  8. <div class="row">
  9. <div class="col-lg-4">'.$row['Nazwa'].'</div>
  10. <div class="col-lg-4">'.$row['Opis'].'</div>
  11. <div class="col-lg-4">'.$row['Wersja'].'</div>
  12. </div>';
  13. }


Ten post edytował by_ikar 27.08.2014, 19:22:31
Go to the top of the page
+Quote Post
nospor
post
Post #7





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




@by_ikar pozbawiles autora 2 sekund myslenia.... tylko mu zaszkodziles...
Go to the top of the page
+Quote Post
by_ikar
post
Post #8





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


@nospor w sumie zdałem sobie sprawę z tego dopiero po tym jak już wysłałem posta i przeczytałem twojego.. :/
Go to the top of the page
+Quote Post
arstherapia
post
Post #9





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Nie za wracałbym Wam gitary, gdybym nie próbował:

  1. <?php
  2. include("include/header_z_menu.php");
  3. ?>
  4. <?php
  5. try
  6. {
  7. $db = new PDO('sqlite:arstherapia.sqlite');
  8.  
  9. $result = $db->query('SELECT * FROM filmy');
  10. foreach($result as $row)
  11. {
  12.  
  13. print "<div class="row"><div class="col-lg-3">".$row['Nazwa']."</div>";
  14. print "<div class="col-lg-3">".$row['Opis']."</div>";
  15. print "<div class="col-lg-3">".$row['Wersja']."</div></div>";
  16. }
  17.  
  18. $db = NULL;
  19. }
  20. catch(PDOException $e)
  21. {
  22. print 'Exception : '.$e->getMessage();
  23. }
  24. ?>


Ale nie działa. Gdzieś mam błąd w rozumowaniu, a nie wiem gdzie.

Ps. Patrzenie na avatar przestało pomagać (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
by_ikar
post
Post #10





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Ok, no to wiemy coś więcej, a co dokładnie nie działa? Jakieś efekty uboczne ?
Go to the top of the page
+Quote Post
nospor
post
Post #11





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




(IMG:style_emoticons/default/facepalmxd.gif)

Nawet kolorowanie skladni forum pokazuje bledy. Przeciez dostajesz PARSE ERRORY na ekranie, nie widzisz ich?!

NIe mozesz pisac: echo "sdasd" asdsa" ";
Albo piszesz echo " sdasd \"asdasd\"";
albo echo 'aasa"sdasd"asd';
To sa podstawy obslugi tekstow...
Go to the top of the page
+Quote Post
ZaXaZ
post
Post #12





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


Cytat(arstherapia @ 27.08.2014, 20:26:00 ) *
Nie za wracałbym Wam gitary, gdybym nie próbował:

  1. <?php
  2. include("include/header_z_menu.php");
  3. ?>
  4. <?php
  5. try
  6. {
  7. $db = new PDO('sqlite:arstherapia.sqlite');
  8.  
  9. $result = $db->query('SELECT * FROM filmy');
  10. foreach($result as $row)
  11. {
  12.  
  13. print "<div class="row"><div class="col-lg-3">".$row['Nazwa']."</div>";
  14. print "<div class="col-lg-3">".$row['Opis']."</div>";
  15. print "<div class="col-lg-3">".$row['Wersja']."</div></div>";
  16. }
  17.  
  18. $db = NULL;
  19. }
  20. catch(PDOException $e)
  21. {
  22. print 'Exception : '.$e->getMessage();
  23. }
  24. ?>


Ale nie działa. Gdzieś mam błąd w rozumowaniu, a nie wiem gdzie.

Ps. Patrzenie na avatar przestało pomagać (IMG:style_emoticons/default/smile.gif)


Mistrz, masz kolorowa skladnie na forum i pewnie jak tworzyles kod i nie widzisz? Podpowiem "
Go to the top of the page
+Quote Post
arstherapia
post
Post #13





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(by_ikar @ 27.08.2014, 20:27:18 ) *
Ok, no to wiemy coś więcej, a co dokładnie nie działa? Jakieś efekty uboczne ?


Dziękuję za fragment kodu, mój nie wyświetlał mi po prostu nic.

Zaraz sprawdzę Twój i będę porównywać, co by mi nospor nie zarzucił braku myślenia (IMG:style_emoticons/default/smile.gif)

Dziękuję(IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
by_ikar
post
Post #14





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Przyznam się bez bicia że nie zwróciłem na to uwagi, bo było to dla mnie oczywiste.. :|
Go to the top of the page
+Quote Post
nospor
post
Post #15





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Dziękuję za fragment kodu, mój nie wyświetlał mi po prostu nic.
Czyli masz wylaczone wyswietlanie bledow... Tak sie nie da pracowac... Wejdz w php.ini i ustaw wyswietlaniesz bledow. A najlepiej ustaw wyswietlanie wszystkich bledow. Wowczas bedziesz widzial czarno na bialym jakie masz bledy
Go to the top of the page
+Quote Post
ctom
post
Post #16





Grupa: Zarejestrowani
Postów: 321
Pomógł: 55
Dołączył: 19.04.2009

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


zobacz i przeanalizuj jak "drukuje html" @by_ikar a jak Ty .... znajdź różnice a kod pewnie zacznie Ci działać (zakładam, że w tym kawałku masz błędy)
Go to the top of the page
+Quote Post
arstherapia
post
Post #17





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(ZaXaZ @ 27.08.2014, 20:28:55 ) *
Mistrz, masz kolorowa skladnie na forum i pewnie jak tworzyles kod i nie widzisz? Podpowiem "


Chyba wiem, zaraz będę sprawdzał. Chyba powinno być:

  1. print "<div class="row">""<div class="col-lg-3">".$row['Nazwa']."</div>";


Dzięki wielkie (IMG:style_emoticons/default/smile.gif)


Cytat(ctom @ 27.08.2014, 20:30:26 ) *
zobacz i przeanalizuj jak "drukuje html" @by_ikar a jak Ty .... znajdź różnice a kod pewnie zacznie Ci działać (zakładam, że w tym kawałku masz błędy)


Zrobione (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
nospor
post
Post #18





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Chyba powinno być:

[PHP] pobierz, plaintext

print "<div class="row">""<div class="col-lg-3">".$row['Nazwa']."</div>";
Widze ustawiles filtr na moje wiadomosci....
Go to the top of the page
+Quote Post
arstherapia
post
Post #19





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(nospor @ 27.08.2014, 20:32:08 ) *
Widze ustawiles filtr na moje wiadomosci....


Dziękuję (IMG:style_emoticons/default/smile.gif)

Filtr? Ja nawet nie wiem, co to jest i gdzie się to ustawia...
Go to the top of the page
+Quote Post
nospor
post
Post #20





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Chodzilo mi o to, ze napisalem jak masz to zrobic, a ty dwa posty pozniej piszesz poprawke totalnie ignorującą to co napisalem. Stad żart o filtrze (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
arstherapia
post
Post #21





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Mam jeszcze jedno pytanie:

Jak to się dzieje ( jakoś musi na mój prosty rozumek ), że pole tekstowe z bazy
jest czasami wyświetlane w divie i podzielone na paragrafy, z formatowaniem itd. ?

Czy to znaczy, że:

a) w polu tekstowym w bazie jest wrzucony tekst z kodem html, który go formatuje?
(IMG:style_emoticons/default/cool.gif) każdy paragraf jest w osobnym polu?
c) (IMG:style_emoticons/default/questionmark.gif) ?

Ten post edytował arstherapia 27.08.2014, 19:36:47
Go to the top of the page
+Quote Post
nospor
post
Post #22





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




No jesli ty sam go nie wstawiasz w divy czy w p, znaczy ze to pole ma taką zawartosc. No samo z siebie nic sie nie dzieje (IMG:style_emoticons/default/smile.gif)

Ale to mozesz łatwo sprawdzic przeciez... zajrzyj do bazy i bedziesz widzial co tam jest.
Go to the top of the page
+Quote Post
arstherapia
post
Post #23





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(nospor @ 27.08.2014, 20:34:40 ) *
Chodzilo mi o to, ze napisalem jak masz to zrobic, a ty dwa posty pozniej piszesz poprawke totalnie ignorującą to co napisalem. Stad żart o filtrze (IMG:style_emoticons/default/tongue.gif)


A, teraz kumam:)


Cytat(nospor @ 27.08.2014, 20:38:14 ) *
No jesli ty sam go nie wstawiasz w divy czy w p, znaczy ze to pole ma taką zawartosc. No samo z siebie nic sie nie dzieje (IMG:style_emoticons/default/smile.gif)

Ale to mozesz łatwo sprawdzic przeciez... zajrzyj do bazy i bedziesz widzial co tam jest.


Niestety, nie mogę. To hipotetyczne założenie przeglądając internet:

Chciałbym np. żeby pole tekstowe w bazie po komendzie print wyświetlało się tak:

La la la la la
hi hi hi hi hi
buuuuuuuuu

I nie wiem, jak to zrobić, a materiałów i tutoriali w sieci o tym nie znalazłem:(
Go to the top of the page
+Quote Post
nospor
post
Post #24





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




No zartujesz sobie znowu....

echo '<b>'.$pole_z_bazy.'</b>';

HTML nie znasz??
Go to the top of the page
+Quote Post
by_ikar
post
Post #25





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Cytat
La la la la la
hi hi hi hi hi
buuuuuuuuu

Niewiele mi to mówi, a coś dokładniej?

Jak nie wiesz co jest pod daną zmienną, to wyświetl jej zawartość poprzez var_dump i wtedy będziesz wiedział co jest wewnątrz. A jak jesteś ciekaw zawartości bazy sqlite, to polecam ci wtyczkę do firefoxa, której sam używam: https://addons.mozilla.org/pl/firefox/addon/sqlite-manager/
Go to the top of the page
+Quote Post
nospor
post
Post #26





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




@by_ikar ty cos dzisiaj kumatością dorownujesz autorowi tego tematu (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
by_ikar
post
Post #27





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


@nospor wolę być pewny, niż pisać kilka rozwiązań, nie wiem co ma na myśli że chce użyć czegoś takiego (tutaj pokazuje pogrubiony/kursywą/podkreślony tekst) i że nie może tutoriali na ten temat znaleźć. Nie no na prawdę, nie chcę tutaj nikogo oceniać, ale jeżeli to faktycznie chodziło o pogrubienie, pochylenie czy podkreślenie, no to wymiękam.
Go to the top of the page
+Quote Post
arstherapia
post
Post #28





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Ej, no nie, bez żartów:)

To:

  1. echo '<b>'.$pole_z_bazy.'</b>';


kumam. Ale jak podzielić pole z bazy na paragrafy?
Jak jedno zdanie z pola z bazy wyświetlić w innym kolorze np. ?

Jedyne co mi przychodzi do głowy, to kilka pól w bazie,
np. $wstep_do_opisu , $paragraf1, $paragraf2, $zakonczenie_opisu .

Ale to byłoby bez sensu...
Go to the top of the page
+Quote Post
nospor
post
Post #29





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Fju fju.... zwracam honor obydwu panom (IMG:style_emoticons/default/smile.gif)

Roznie to się robi:
Albo tak tworzysz zawartosc pola razem z html
Albo rozbijasz na oddzielne pola
Albo w tekscie dajesz np: blabla | blabla| blabla i wiesz ze wszystko podzielone | masz wstawic w akapity
Go to the top of the page
+Quote Post
by_ikar
post
Post #30





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Ha! Wiedziałem że to nie może chodzić o coś takiego @nospor, czyli jeszcze nie jest ze mną tak źle (IMG:style_emoticons/default/biggrin.gif)

@arstherapia - wiesz, jest na to wiele sposobów, przykładowo możesz taki ciąg rozbić za pomocą explode i dodać do kolejnej pętli w której sobie będziesz każdy wyraz kolorował jak chciał. Pytanie jest co dokładnie próbujesz osiągnąć.
Go to the top of the page
+Quote Post
arstherapia
post
Post #31





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Dziękuję bardzo Panowie. Będę myślał i próbował, zapoznam się z explode i wstawianiem tekstu z html w bazie.

Jeszcze raz wielkie dzięki !
Go to the top of the page
+Quote Post
nospor
post
Post #32





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Ha! Wiedziałem że to nie może chodzić o coś takiego @nospor, czyli jeszcze nie jest ze mną tak źle
W blad wprowadzil mnie jego glowny problem z tego tematu... Skoro wylozyl sie na czyms takim, to sadzilem ze i teraz nie jest lepiej (IMG:style_emoticons/default/wink.gif) Jeszcze raz przepraszam (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
ZaXaZ
post
Post #33





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


Cytat(nospor @ 27.08.2014, 20:45:26 ) *
No zartujesz sobie znowu....

echo '<b>'.$pole_z_bazy.'</b>';

HTML nie znasz??

Chyba zna jak odwalił BBcode (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
by_ikar
post
Post #34





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Z mojej strony nie ma problemu, dla mnie to jest tylko internet, ale przyznaje że sam nie wiedziałem o co chodzi i za pierwszym razem napisałem czy chodzi o pogrubienie etc, ale usunąłem to i napisałem "poprawnie politycznego" posta.. Ja tutaj nie mam takiego stażu jak ty, więc czuje się tutaj bardziej jako nadgorliwy uczeń niż nauczyciel - jak w twoim przypadku (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
arstherapia
post
Post #35





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


To jeszcze tak dopytam, czy da się to zakodować prościej, czyściej?

Kod o który pytam:

  1. <!-- Pierwszy rząd -->
  2. <div class="row">
  3. <?php
  4. $db = new PDO('sqlite:arstherapia.sqlite');
  5. $result = $db->query('SELECT Nazwa FROM filmy');
  6.  
  7. foreach($result as $row)
  8. { echo '<div class="col-lg-4">'.$row['Nazwa'].'</div>';}
  9. ?>
  10. </div>
  11.  
  12. <!-- Tu będzie okładka - drugi rząd -->
  13.  
  14. <!-- Trzeci rząd -->
  15. <div class="row">
  16. <?php
  17. $db = new PDO('sqlite:arstherapia.sqlite');
  18. $result = $db->query('SELECT Opis FROM filmy');
  19.  
  20. foreach($result as $row)
  21. { echo '<div class="col-lg-4">'.$row['Opis'].'</div>';}
  22. ?>
  23. </div>
  24. <?php


Go to the top of the page
+Quote Post
nospor
post
Post #36





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Obiekt PDO masz tworzyc tylko raz a nie za kazdym razem gdy robisz zapytanie.
Zapytanie do tabeli masz robic tylko raz a nie za kazdym razem gdy chcesz pobrac inną kolumne
Go to the top of the page
+Quote Post
arstherapia
post
Post #37





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(nospor @ 27.08.2014, 23:14:17 ) *
Obiekt PDO masz tworzyc tylko raz a nie za kazdym razem gdy robisz zapytanie.
Zapytanie do tabeli masz robic tylko raz a nie za kazdym razem gdy chcesz pobrac inną kolumne


Dobrze, obiekt PDO utworzony tylko raz.

Jednak gdy próbuję zrobić zapytanie do tabeli zaraz po utworzeniu obiektu, przed divami, to
listuje mi się tylko pierwszy rząd.
( $result = $db->query('SELECT * FROM filmy'); )

Muszę myśleć dalej.

Poza tym, mam kolejną zagwostkę: BLOB'y.
Jak utworzyć pola, to wiem, ale jak wgrać tam po ludzku obrazek, to już mniej.

Poprawiony kod poniżej:

  1. <?php
  2. $db = new PDO('sqlite:arstherapia.sqlite');
  3.  
  4. ?>
  5.  
  6. <!-- Pierwszy rząd -->
  7. <div class="row">
  8. <?php
  9. $result = $db->query('SELECT Nazwa FROM filmy');
  10. foreach($result as $row)
  11. { echo '<center><div class="col-lg-2">'.$row['Nazwa'].'</div></center>';}
  12. ?>
  13. </div>
  14.  
  15. <!-- Drugi rząd -->
  16. <div class="row">
  17. <?php
  18. $result = $db->query('SELECT Opis FROM filmy');
  19. foreach($result as $row)
  20. { echo '<center><div class="col-lg-2"><a class="btn btn-default">'.$row['Opis'].'</a></div></center>';}
  21. ?>
  22. </div>


--------------------------------------------------------------------------------------
Jakoś sobie poradziłem z blobami i obrazkami. Wyświetlam je tak:

  1. <div class="row">
  2. <?php
  3. $result = $db->query('SELECT Okladka FROM filmy');
  4. foreach($result as $row)
  5. { echo '<center><div class="col-lg-2"><img src="data:image/jpeg;base64,' . base64_encode( $row['Okladka'] ) . '" class="okladka"/> </div></center>';}
  6. ?>
  7. </div>


Na dziś koniec, łeb mi pęka. Nie wiem, czy też tak macie, ale to strasznie ciężka umysłowo praca. Nie robię w kopalni, ale tak przewalonego mózgu w tą i nazad dawno nie miałem.

A jeszcze: muszę się nauczyć generować linki dla każdego produktu i stronę produktu z danymi z bazy do tego linku. Ratunku!

Dobranoc.

Go to the top of the page
+Quote Post
Turson
post
Post #38





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Nie zapisuj obrazków w bazie, bo to nie ma sensu. Zapisz fizycznie na dysku, a w bazie informację o obrazku np. ścieżkę/nazwę pliku
Go to the top of the page
+Quote Post
arstherapia
post
Post #39





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(Turson @ 28.08.2014, 08:35:07 ) *
Nie zapisuj obrazków w bazie, bo to nie ma sensu. Zapisz fizycznie na dysku, a w bazie informację o obrazku np. ścieżkę/nazwę pliku


Myślałem o tym, ale moje okładki nie mają dużej objętości, eksportuję je ładnie z PS... Tak sobie wymyśliłem, że backup bazy będzie
w jednym pliku ze wszystkim.

Co przemawiałoby za zapisywaniu jako informacji o ścieżce ?


Go to the top of the page
+Quote Post
Turson
post
Post #40





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Baza się rozrasta i ma niepotrzebnie duży rozmiar.
http://stackoverflow.com/questions/6472233...images-in-mysql
Go to the top of the page
+Quote Post
tzm
post
Post #41





Grupa: Zarejestrowani
Postów: 675
Pomógł: 58
Dołączył: 17.12.2013

Ostrzeżenie: (10%)
X----


Szybkość i wydajność, rozmiar bazy do backupowania.
Poza tym dla mnie logiczne jest że uploadujac cos z dysku kopie obrazkow masz zapisana wiec tak ma byc jak pisze Turson.
Tak sie po prostu robi, ucz sie dobrych praktyk i nie cuduj bo nie potrzebnie zly nawyk nabierzesz ktorego nigdy w praktyce nie wykorzystasz bo ja bym sie az bal komentarza starszego programisty nad soba za takie rozwiazanie:P
Sa standardy programowania i to do nich nalezy.
W bazie trzymaj sciezke do pliku, nie wazne czy z dysku czy z zewnetrznego serwisu.
Go to the top of the page
+Quote Post
arstherapia
post
Post #42





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Dzięki piękne, odrobiłem pracę domową, poczytałem i faktycznie przerobiłem tak:

  1. <?php
  2. $result = $db->query('SELECT cover FROM filmy');
  3. foreach($result as $row)
  4. { echo '<center><div class="col-lg-2"><img src="'.$row['cover'].'" class="picColor"/></div></center>';}
  5. ?>


Teraz muszę się zastanowić, jak zrobić coś takiego, jak:

-link do strony ze szczegółowym opisem- generujący się odpowiednio pod okładką,

np. nazwa=kernberg-superwizja, okładka=kernberg-superwizja.jpg ,
to link product-view[id-filmy-czyli:kernberg-superwizja].php .

A ta strona nie będzie wcześniej istnieć, tylko templatka: product-view-?id z bazy.php

Więc będę musiał pewnie jakoś linkiem przesłać do niej dane. Masakra. Koszmar. Horror. Thriller.

Nie mam pojęcia o czym piszę i jak to zrobić. Jak mi się rozjaśni w głowie, to może
napiszę coś bardziej precyzyjnie.

Dzięki!

Go to the top of the page
+Quote Post
Turson
post
Post #43





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Wysyłasz interesujące dane przez $_GET, np.
view.php?title=lorem&okladka=ipsum
w $_GET masz wtedy wszystko
Go to the top of the page
+Quote Post
arstherapia
post
Post #44





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(Turson @ 28.08.2014, 12:06:04 ) *
Wysyłasz interesujące dane przez $_GET, np.
view.php?title=lorem&okladka=ipsum
w $_GET masz wtedy wszystko


Dzięki!

Kiedy ja to wszystko przerobię i się naumiem... (IMG:style_emoticons/default/worriedsmiley.gif)
Go to the top of the page
+Quote Post
tzm
post
Post #45





Grupa: Zarejestrowani
Postów: 675
Pomógł: 58
Dołączył: 17.12.2013

Ostrzeżenie: (10%)
X----


Cytat(arstherapia @ 28.08.2014, 14:10:05 ) *
Dzięki!

Kiedy ja to wszystko przerobię i się naumiem... (IMG:style_emoticons/default/worriedsmiley.gif)


Za godzinę jak masz czas żeby potestować.
Go to the top of the page
+Quote Post
arstherapia
post
Post #46





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(tzm @ 28.08.2014, 14:43:22 ) *
Za godzinę jak masz czas żeby potestować.


Coś takiego działa przenosząc mnie na stronę templatki:

  1. { echo '<center><div class="col-lg-2"><a class="btn btn-default" href="product_view_template.php?id=' . ( $row['Nazwa'] ) . '">></a></div></center>';}


Wieczorem spróbuję pododawać opcje, ale nie bardzo wiem, jaka jest składnia i co to jest to $GET . ( będę szukać ).

Na moje to powinno iść mniej więcej tak:

  1. href="product_view_template.php?tytuł=' . ( $row['Nazwa'] ) . '" & okladka=' . ( $row['okladka'] ) . ' & cena=' . ( $row['Nazwa'] ) . '"


itd. , ale nie wiem czy dobrze kombinuję. A nawet jeśli, to czy te zmienne można wywołać w szablonie templatki umieszczając je we właściwych miejscach.

Dzięki za całą pomoc do tej pory, bez Was bym sobie nie poradził(IMG:style_emoticons/default/smile.gif)



Go to the top of the page
+Quote Post
Turson
post
Post #47





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Dobrze myślisz, pomijając parse error w drugim kodzie. Taka rada jeszcze - nie używaj polskich znaków w url.
Nie $GET, a $_GET - olbrzymia różnica.
http://php.net//manual/pl/reserved.variables.get.php
Go to the top of the page
+Quote Post
arstherapia
post
Post #48





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(Turson @ 28.08.2014, 15:17:21 ) *
Dobrze myślisz, pomijając parse error w drugim kodzie. Taka rada jeszcze - nie używaj polskich znaków w url.
Nie $GET, a $_GET - olbrzymia różnica.
http://php.net//manual/pl/reserved.variables.get.php


parse error? błąd parsowania? znaczy się gdzieś mi brakuje średnika czy coś pewnie znowu:)

Biorę się za lekturę, przyszło mi coś takiego jeszcze do głowy, żeby $id, czy $nazwę wyciągnać z urla, a potem:

  1. SELECT * FROM filmy WHERE id='$id' LIMIT 1


i powyciągać sobie te dane w ten sposób i powyświetlać je w odpowiednich divach.

A o $_GET już czytam. Nie wiem, czy to jedna, czy dwie metody, o których piszemy, ale dowiem się (IMG:style_emoticons/default/smile.gif)

Dzięki!
Go to the top of the page
+Quote Post
Turson
post
Post #49





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Zamknąłeś/nie zamknąłeś " lub '. Składnia koloruje to już tak, że widać od razu.
Zapytanie ok, tylko... przeczytaj o SQL Injection (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
arstherapia
post
Post #50





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(Turson @ 28.08.2014, 15:28:21 ) *
Zamknąłeś/nie zamknąłeś " lub '. Składnia koloruje to już tak, że widać od razu.
Zapytanie ok, tylko... przeczytaj o SQL Injection (IMG:style_emoticons/default/wink.gif)


A kto by chciał się do mnie, małego sklepiku z filmami o psychoterapii i psychologii włamywać... ?

Ja skromna osoba, skromny towar, skromne transakcje...


--------------------------------------------------------
Jasna cholera, znowu mam coś nie tak w kodzie.

Wyrzuca mi:

syntax error, unexpected 'Nazwa' (T_STRING)

Jeśli ktoś z Was będzie to czytać, proszę tylko dać znać, czy idę w dobrym kierunku.

  1.  
  2. $db = new PDO('sqlite:arstherapia.sqlite');
  3. $Nazwa = $_GET['Nazwa'];
  4. $result = $db->query('SELECT * FROM filmy WHERE Nazwa='Nazwa'' LIMIT 1');
  5. foreach($result as $row)
  6. { echo '<center><div class="col-lg-2">'.$row['Nazwa'].'</div></center>';}
  7. { echo '<center><div class="col-lg-2">'.$row['Opis'].'</div></center>';}
  8. { echo '<center><div class="col-lg-2">'.$row['Wersja'].'</div></center>';}


Chyba muszę wrócić do podstaw...

Ten post edytował arstherapia 28.08.2014, 15:27:48
Go to the top of the page
+Quote Post
Turson
post
Post #51





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


  1. $result = $db->query('SELECT * FROM filmy WHERE Nazwa="Nazwa" LIMIT 1');

skąd wziąłeś $row? Nie widzę żadnego fetch()
Go to the top of the page
+Quote Post
arstherapia
post
Post #52





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(Turson @ 28.08.2014, 16:20:09 ) *
  1. $result = $db->query('SELECT * FROM filmy WHERE Nazwa="Nazwa" LIMIT 1');

skąd wziąłeś $row? Nie widzę żadnego fetch()



Już uzupełniłem w kodzie w ostatnim poście, ale pewnie źle. Nie działa.

-----------------------------------------------------------------
Poprawiam, ale nadal pluje błędami.

Undefinied index - to pewnie coś o zmiennej $_GET

Invalid argument dla pętli

Undefinied variable... to przy moich echo

  1. $db = new PDO('sqlite:arstherapia.sqlite');
  2. $Nazwa = $_GET['Nazwa'];
  3. $result = $db->query("SELECT * FROM filmy WHERE Nazwa='$Nazwa'' LIMIT 1");
  4. foreach($result as $row)
  5. { echo '<center><div class="col-lg-2">'.$row['Nazwa'].'</div></center>';}
  6. { echo '<center><div class="col-lg-2">'.$row['Opis'].'</div></center>';}
  7. { echo '<center><div class="col-lg-2">'.$row['Wersja'].'</div></center>';}


Php język trudna język. Chyba dzień czy dwa wrócę do podstaw (IMG:style_emoticons/default/sciana.gif)
Go to the top of the page
+Quote Post
ZaXaZ
post
Post #53





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


Cytat(arstherapia @ 28.08.2014, 16:42:01 ) *
Undefinied index - to pewnie coś o zmiennej $_GET

Invalid argument dla pętli

Undefinied variable... to przy moich echo

  1. $db = new PDO('sqlite:arstherapia.sqlite');
  2. $Nazwa = $_GET['Nazwa'];
  3. $result = $db->query("SELECT * FROM filmy WHERE Nazwa='$Nazwa'' LIMIT 1");
  4. foreach($result as $row)
  5. { echo '<center><div class="col-lg-2">'.$row['Nazwa'].'</div></center>';}
  6. { echo '<center><div class="col-lg-2">'.$row['Opis'].'</div></center>';}
  7. { echo '<center><div class="col-lg-2">'.$row['Wersja'].'</div></center>';}


Php język trudna język. Chyba dzień czy dwa wrócę do podstaw (IMG:style_emoticons/default/sciana.gif)

Dobry pomysl z wroceniem...
Tak wyglada bardziej poprawnie niz twoje:

  1. $db = new PDO('sqlite:arstherapia.sqlite');
  2. $Nazwa = $_GET['Nazwa'];
  3. $result = $db->prepare('SELECT * FROM filmy WHERE Nazwa=:nazwa LIMIT 1');
  4. $result->bindParam(':nazwa', $Nazwa, PDO::PARAM_STR);
  5. $result->execute();
  6. foreach($result->fetch(PDO::FETCH_ASSOC) as $row)
  7. { echo '<center><div class="col-lg-2">'.$row['Nazwa'].'</div></center>';
  8. echo '<center><div class="col-lg-2">'.$row['Opis'].'</div></center>';
  9. echo '<center><div class="col-lg-2">'.$row['Wersja'].'</div></center>';}


@Turson, bez fetch() query przyjmuje domyslnie pobranie ze stala PDO::FETCH_BOTH
Jak sie myle, niech ktos mnie poprawi...


Ten post edytował ZaXaZ 28.08.2014, 16:08:56
Go to the top of the page
+Quote Post
arstherapia
post
Post #54





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Dziękuję, ZaXaZ, niestety gdzieś jest chyba jakiś błąd.

Wypluwa mi:

Warning: Illegal string offset 'Nazwa'
Warning: Illegal string offset 'Opis' itd...

a same dane - jakieś literki - są rozsypane poniżej.

Badam dalej, jeśli ktoś, (np. Turson (IMG:style_emoticons/default/smile.gif) ma jakąś ideę, to bardzo proszę(IMG:style_emoticons/default/smile.gif)

Ps. Oczywiście i tak wracam do podstaw.
Go to the top of the page
+Quote Post
ZaXaZ
post
Post #55





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


Cytat(arstherapia @ 28.08.2014, 17:14:36 ) *
Dziękuję, ZaXaZ, niestety gdzieś jest chyba jakiś błąd.

Wypluwa mi:

Warning: Illegal string offset 'Nazwa'
Warning: Illegal string offset 'Opis' itd...

a same dane - jakieś literki - są rozsypane poniżej.

Badam dalej, jeśli ktoś, (np. Turson (IMG:style_emoticons/default/smile.gif) ma jakąś ideę, to bardzo proszę(IMG:style_emoticons/default/smile.gif)

Ps. Oczywiście i tak wracam do podstaw.

Te indeksy nie istnieja pewnie,
Zrob dla tekstu tak:

  1. $q = $PDO->query('SELECT * FROM `filmy`')->fetch(PDO::FETCH_ASSOC);
  2. print_r($q);

I pokaż co Ci zwraca, kliknij pierwszy link w mojej sygnaturze.

Ten post edytował ZaXaZ 28.08.2014, 16:22:47
Go to the top of the page
+Quote Post
arstherapia
post
Post #56





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


Cytat(ZaXaZ @ 28.08.2014, 17:22:11 ) *
Te indeksy nie istnieja pewnie,
Zrob dla tekstu tak:

  1. $q = $PDO->query('SELECT * FROM `filmy`')->fetch(PDO::FETCH_ASSOC);
  2. print_r($q);

I pokaż co Ci zwraca, kliknij pierwszy link w mojej sygnaturze.


Ok, czytam pierwszy link:)

Zwraca:

Undefined variable: PDO

mimo:

  1. $db = new PDO('sqlite:arstherapia.sqlite');


Dobra, skumałem, przepraszam za głupotę.

Wyrzuca: (pewnie przez nadal istenijące bloby )

  1. Array ( [Nazwa] => Superwizja Yalom [Opis] => fajny film [Wersja] => indywidualna [Okladka] => ����JFIF��ExifMM*bj(1r2��i��''Adobe Photoshop CS4 Windows2014:08:22 20:15:31��&(.YHH����JFIFHH�� Adobe_CM��Adobed���            ��s"����?   3!1AQa"q2���B#$Rb34r��C%S���cs5���&D�TdEŁt6Ue�����u��F'���������������Vfv��������7GWgw��������5!1AQaq"2����B#R��3$br��CScs4$F��ݑ_����e���m������bV0{,9[���,ȯw���>v����$ˠ��}
itd.

Ten post edytował arstherapia 28.08.2014, 16:29:47
Go to the top of the page
+Quote Post
arstherapia
post
Post #57





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


----------------
Ps. Po usunięciu blobów nadal :

Illegal string offset 'Nazwa' (IMG:style_emoticons/default/sad.gif)

Przepraszam, aktualizacja po podmianie pliku:

  1. Array ( [Nazwa] => Superwizja Yalom [Opis] => fajny film [Wersja] => indywidualna )


Teraz powinno działać(IMG:style_emoticons/default/smile.gif) Dziękuję(IMG:style_emoticons/default/smile.gif)

Śmigam kupić pieskowi jedzenie...
Go to the top of the page
+Quote Post
ZaXaZ
post
Post #58





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


Cytat(arstherapia @ 28.08.2014, 17:34:39 ) *
----------------
Ps. Po usunięciu blobów nadal :

Illegal string offset 'Nazwa' (IMG:style_emoticons/default/sad.gif)

Przepraszam, aktualizacja po podmianie pliku:

  1. Array ( [Nazwa] => Superwizja Yalom [Opis] => fajny film [Wersja] => indywidualna )


Teraz powinno działać(IMG:style_emoticons/default/smile.gif) Dziękuję(IMG:style_emoticons/default/smile.gif)

Śmigam kupić pieskowi jedzenie...


Duże przeoczenie zrobilem (foreach) zrob while:
  1. $db = new PDO('sqlite:arstherapia.sqlite');
  2. $Nazwa = $_GET['Nazwa'];
  3. $result = $db->prepare('SELECT * FROM filmy WHERE Nazwa=:nazwa LIMIT 1');
  4. $result->bindParam(':nazwa', $Nazwa, PDO::PARAM_STR);
  5. $result->execute();
  6. while($row = $result->fetch(PDO::FETCH_ASSOC))
  7. { echo '<center><div class="col-lg-2">'.$row['Nazwa'].'</div></center>';
  8. echo '<center><div class="col-lg-2">'.$row['Opis'].'</div></center>';
  9. echo '<center><div class="col-lg-2">'.$row['Wersja'].'</div></center>';}

Edit: jak przyjrzalem sie zapytaniu (LIMIT 1) to wlasciwie nie wiem po co pętla (IMG:style_emoticons/default/biggrin.gif) ,
Zrób poprostu:

  1. $row=$result->fetch(PDO::FETCH_ASSOC);
  2. echo '<center><div class="col-lg-2">'.$row['Nazwa'].'</div></center>';
  3. echo '<center><div class="col-lg-2">'.$row['Opis'].'</div></center>';
  4. echo '<center><div class="col-lg-2">'.$row['Wersja'].'</div></center>';


Ten post edytował ZaXaZ 28.08.2014, 17:53:07
Go to the top of the page
+Quote Post
arstherapia
post
Post #59





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

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


ZaXaZ, działa jak marzenie:) Dziękuję (IMG:style_emoticons/default/exclamation.gif) !
Go to the top of the page
+Quote Post

3 Stron V   1 2 3 >
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: 13.10.2025 - 20:12