Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][sql][popup] Wyswietlanie wiekszego opisu z bazy
Forum PHP.pl > Forum > PHP
neoangin
Mam liste towarow wyswietlana na jednej stronie. Z bazy pobierane sa rekordy: 'obrazek' , 'tytul', 'opis' i wyswietlane. Jest takze przy kazdym towarze przycisk : "wiecej" . Po ktorego kliknieciu chcialbym zeby wyswietlal sie w popupie wieskzy opis ( 'opisw' z bazy). Chcialbym zrobic to jakos przez js przez np cos takiego:

  1. ...
  2. <script language="JavaScript1.2"> function NoweOkno(){window.open('aparaty_more.php', 'Aparaty', 'toolbar,menubar,scrollbars,resizable, height=300,width=300');}; </script>
  3.  
  4. ...
  5.  
  6. <a href=\"#\" onClick=\"javascript:NoweOkno()\"><img border=\"0\" src=\"php/wiecej.gif\" width=\"54\" height=\"19\"></a>


Nie wiem tylko jak i czy mozna jakos przeslac id rekordu danego do: "aparaty_more.php" stosujac taki js. Tak aby skrypt wyswietlajacy wiekszy opis wiedzial z ktorego : "opisw" korzystac. Wydaje mi sie ze bede musial pokombinowac z <form method> i dodaniem styli do "submita". Ale moze zna ktos jakis sposob(sztuczke z js i popupem) ? np zeby popup wyswitlal juz sama tresc rekordu z bazy?
pbnan
window.open w JS zwraca nowy uchwyt do okna. Możesz go potem wykorzystać, aby uzupełnić informacje w tym oknie z okna, gdzie jest ta lista produktów, czy co Ty tam masz. smile.gif
Ja bym to tak wykonał:
jest link <a href="java script:showMoreInfo(2);">Więcej o produkcie nr 2</a>
wywołuje on funkcję showMoreInfo, która może po ID elementu robić tak:
- wywołuje asynchronicznie skrypt PHP element_info.php?id=2
- zbiera informacje z wywołania tego skryptu
- wyświetla okienko
- uzupełnia to okienko o pobrane informacje.

Trochę tego jest. Mam nadzieję, że ja Cie poprawnie zrozumiałem, oraz Ty mnie. smile.gif Pozdrawiam.
neoangin
hm no tak ale czy zapis z heada:

Kod
<script language="JavaScript1.2"> function NoweOkno($nr){window.open('more_info_a.php?id=$nr', 'Aparaty', 'toolbar,menubar,scrollbars,resizable, height=300,width=300');}; </script>


musi byc w znaczniku php?



w body jest:
  1. <?php
  2.  
  3.  require_once("php/mysql_connect.php");
  4. ...
  5. ...
  6. ...
  7.  
  8.  echo "<p align=\"right\" class=\"main\"><a href=\"#\" onClick=\"javascript:Noweokno($nr) \"><img border=\"0\" src=\"php/wiecej.gif\" width=\"54\" height=\"19\"></a></p>";
  9.  
  10. ...
  11. ...
  12. ...
  13. ?>

A sam plik: more_info_a.php , chce by wygladal tak:

  1. <?php
  2.  
  3.  require_once("php/mysql_connect.php");
  4.  
  5.  $wynik = mysql_query("SELECT * FROM Aparaty ORDER BY tytul WHERE $nr = $id;") or die(mysql_error());
  6.  
  7.  $row = mysql_fetch_row($wynik);
  8.  
  9.  echo nl2br($row[3]);
  10.  
  11.  
  12.  ?>



Jak to powinno byc z tym Noweokno($nr)? , bo przy moim zapisie kodu, link nie dziala
Hazel
Cytat(neoangin @ 3.09.2007, 14:36:12 ) *
function NoweOkno($nr)

Chcesz, żeby to działało?
Usuń znak dolara, w JS zmienne nie są poprzedzone dolarem.
neoangin
zmienilem tam gdzie bylo ($nr) na (nr) . Ale nadal nie dziala. Wyswietla sie po kliknieciu na dole: 'blad na stronie' i nie otwiera sie popup
qqrq
function NoweOkno(nr)
{
window.open('more_info_a.php?id='+nr, 'Aparaty', 'toolbar,menubar,scrollbars,resizable, height=300,width=300');
}

Widać różnicę?
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.