Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][html] przekazywanie wynikow z bazy przez php do html
misty
post
Post #1





Grupa: Zarejestrowani
Postów: 366
Pomógł: 0
Dołączył: 2.01.2007

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


witam
problem mam pewnie dosc banalny, przejrzalam forum w poszukiwaniu podobnych watkow ale nadal nie do konca wiem jak to ugryzc.
problem wyglada tak: mam prosta stronke na ktorej uzytkownik moze sobie przegladac rozne rzeczy z bazy danych. z baza lacze sie i wyswietlam dane przy pomocy php. dane ukazuja sie w tablicach i uzytkownik powinien miec mozliwosc ich wydruku. po kliknieciu na 'drukuj' otwiera sie nowe okno w ktorym powinny ukazac sie tabele z danymi, bez tych wszystkich reklam itd, czyli gotowe do druku. pytanie moje jak zrobic by w tym formularzu (xhtml) pokazywaly sie dane ktore wczesniej pobieralam przy pomocy php? tzn bez zbednego wklejania select z php do tego mojego formularza gotowego do wydruku?
czyli jak przekazac dane pobrane z bazy przez plik test.php do test.html?

pzdr!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
misty
post
Post #2





Grupa: Zarejestrowani
Postów: 366
Pomógł: 0
Dołączył: 2.01.2007

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


pierwsze co zrobilam to sprawdzilam czy w plik1.php jest cos przypisywane do zmiennej i tak, wsjo jest jak nalezy.

co do drugiej czesci Twojego posta, zrobilam jak poradziles, czyli w plik1.php wyglada to mniej wiecej tak:
  1. <?php
  2. $polaczenie=pg_connect... 
  3.  $zapytanie="select cos from cos;"; 
  4.  
  5.  $_SESSION['data']=pg_query($polaczenie, $zapytanie); 
  6.  while ($row=pg_fetch_row($_SESSION['data'])) 
  7.  { 
  8.  foreach ($row as $data) 
  9.  echo "$data" 
  10.  }
  11. ?>


no i plik1.php wyswietla jak powinien, czyli wynikiem bedzie to co siedzi w $data-czyli 'cos' pobrane z 'cos' tak jak w zapytaniu.
a gdy w plik2.php odwolam sie do plik1.php i probuje wyswietlic $_SESSION['data'] (lub tez probowalam $data) to otrzymuje takie cos:

Warning: pg_query() [function.pg-query]: Query failed: in /var/www/htdocs/plik1.php on line 52

Warning: pg_fetch_row() expects parameter 1 to be resource, boolean given in /var/www/htdocs/plik1.php on line 55 " title="Zobacz w manualu PHP" target="_manual


i nie wiem czemu..:/

mam jeszcze takie jedno male pytanie, mianowicie czemu include przekazuje mi cala strone?
tzn. mamy plik1.php i plik2.php. i jak w plik2.php dam inculde("plik1.php") to on mi przepisuje cala strone plik1.php..wszystkie dane, tla etc.. a ja bym chciala np tylko z niektorych zmiennych z plik1.php korzystac..
Go to the top of the page
+Quote Post
chlebik
post
Post #3





Grupa: Zarejestrowani
Postów: 113
Pomógł: 5
Dołączył: 12.09.2006
Skąd: Pruszków/Warszawa

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


Cytat(misty @ 22.02.2007, 21:07:32 ) *
mam jeszcze takie jedno male pytanie, mianowicie czemu include przekazuje mi cala strone?
tzn. mamy plik1.php i plik2.php. i jak w plik2.php dam inculde("plik1.php") to on mi przepisuje cala strone plik1.php..wszystkie dane, tla etc.. a ja bym chciala np tylko z niektorych zmiennych z plik1.php korzystac..



Zaczne moze od tego - require oraz include sluza wlasnie do przekazywania calego pliku. Koniec, kropka. Natomiast do przerzucania miedzy stronami wartosci zmiennych sluzy metoda GET (w przypadku mieszania HTMLa z PHP), albo obsluga sesji (tak jak u Ciebie).


Cytat
pierwsze co zrobilam to sprawdzilam czy w plik1.php jest cos przypisywane do zmiennej i tak, wsjo jest jak nalezy.



No i dobrze.



Cytat
a gdy w plik2.php odwolam sie do plik1.php i probuje wyswietlic $_SESSION['data'] (lub tez probowalam $data)


w $_SESSION['data'] to 'data' to identyfikator, a nie zmienna.




Przeczytaj to, co Ci napisalem wczesniej i juz powinnas zrozumiec. Do przekazywania danych miedzy plikami stosuje sie metode POST/GET (najczesciej jesli skrypt z jakiegos powodu odrzucil cookie) lub obsluge sesji. Ty wybralas sesje i uzywanie superglobalnej tablicy $_SESSION. W zwiazku z czym nie musisz dolaczac pliku do drugiego pliku - wszak przekazywana informacja znajduje sie juz w superglobalnej tablicy. Usun po prostu "include" z 2go pliku i powinno byc gites. Pamietaj rowniez, ze do supertablicy $_SESSION musi byc przypisana zmienna, a nie wskaznik do niej czy cokolwiek innego.

Jesli nie to bedziem myslec dalej, bo wtedy oznacza to, ze cos szwankuje z przekazywaniem do $_SESSION (z bazy danych of corze). Miej rowniez pewnosc, ze masz wlaczone cookies.

Ten post edytował chlebik 23.02.2007, 01:08:13
Go to the top of the page
+Quote Post

Posty w temacie


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: 8.10.2025 - 08:06