Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][PHP]Gdzie popełniam błąd
Forum PHP.pl > Forum > Przedszkole
danielk32
mam zadeklarowaną funkcje w javie otwierającą nowe okno ale z poziomu Php nie umiem się do niej dostać funkcja nazywa się nowe_okno i pobiera kilka atrybutów, ale mi szczególnie zależy na zmiennej opis którą pobieram z bazy

  1. <?
  2. include("include/gora.php");
  3. <html>
  4. <head>
  5. <meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-2\"
  6.  
  7. </head>
  8.  
  9. <body>
  10. <CENTER>
  11.  
  12. <form action=\"rezultaty.php\" method=\"post\">
  13. Szukaj wg:
  14. </BR>
  15. </BR>
  16. <select name=\"metoda_szukania\">
  17. <option value=\"przedmiot\">Przedmiot
  18. <option value=\"autor\">Autor
  19. <option value=\"kat\">Kategoria
  20. <option value=\"nr_inw\">Nr. inw
  21.  
  22. </select>
  23. </BR>
  24. </BR>
  25. WprowadĽ poszukiwane wyrażenie:<br />
  26. <input name=\"wyrazenie\" type=\"text\">
  27. </BR>
  28. </BR>
  29. <input type=\"submit\" value=\"Szukaj\">
  30. </form>
  31. </center>
  32. </body>
  33. </html>
  34. ";
  35. ?>
  36. <html>
  37. <head>
  38. <title>Karta eksponatów - wyniki wyszukiwania</title>
  39.  
  40. <script language="Javascript">
  41. <!--
  42. function nowe_okno(url,tytul,opis)
  43. {
  44. var okno;
  45. if (okno){
  46. okno.close();
  47. }
  48. if (url==''){
  49. okno = window.open('',tytul,'toolbar=no, location=no, directories=no, status=no, menubar=no, width=200, height=200, scrollbars=no, resizable=no');
  50. okno.document.open();
  51. okno.document.write('<body bgcolor="navy">');
  52. okno.document.write('<center><b><font color="yellow">'+opis+'</b></center<');
  53. } else {
  54. okno = window.open('',tytul,'toolbar=no, location=no, directories=no, status=no, menubar=no, width=200, height=200, scrollbars=no, resizable=no');
  55. okno.document.open();
  56. okno.document.write("<HEAD><title>"+tytul+"</title></head><BODY leftmargin=1 topmargin=1><IMG src="+url+"></body>");
  57. okno.document.write('<body bgcolor="navy">');
  58. okno.document.write('<center><b><font color="yellow">'+opis+'</b></center<');
  59. }
  60.  
  61. okno.document.close();
  62. okno.focus();
  63. }
  64. //-->
  65. </script>
  66.  
  67. <meta http-equiv="Content-Type" content="text/html; CHARSET=ISO-8859-2"
  68. </head>
  69. <body>
  70. <table align="center" border="" width="95%" cellspacing="0" cellpadding="0" >
  71. <tr>
  72. <td width="91%" colspan="7" bgcolor="#C0C0C0">
  73. <p align="center"><b><font size="2">Wykaz kart eksponatów</font></b></td>
  74. </tr>
  75. <tr>
  76. <td width="4%" align="center" bgcolor="#E0E0E0"><p align="center"><font size="2">ID</font></td>
  77. <td width="10%" align="center" bgcolor="#E0E0E0"><p align="center"><font size="2">Przedmiot</font></td>
  78. <td width="8%" align="center" bgcolor="#E0E0E0"><font size="2">Fotografia i nr inw.</font></td>
  79. <td width="10%" align="center" bgcolor="#E0E0E0"><font size="2">Autor</font></td>
  80. <td width="8%" align="center" bgcolor="#E0E0E0"><font size="2">Kategoria</font></td>
  81. <td width="18%" align="center" bgcolor="#E0E0E0"><font size="2">Opis</font></td>
  82. <td width="8%" align="center" bgcolor="#E0E0E0"><p align="center"><font size="2">Działanie</font></td>
  83. </body>
  84. </HTML>
  85. <?
  86. include("include/globals.php");
  87. require("paging_class.php");
  88.  
  89. $paging=new paging(8,3);
  90. require("../config.php");
  91.  
  92.  
  93. $qw=explode_keyword($_GET[keyword]);
  94.  
  95. $paging->query("select * from historia where $qw order by karta_id asc");
  96.  
  97. $page=$paging->print_info();
  98.  
  99. if (!empty($page["keyword"]))
  100. echo "Keyword : <b>$page[keyword]</b><br>\n";
  101.  
  102. if (empty($page["total"])) {
  103. echo "<u>Not Found</u>\n";
  104. } else {
  105. echo "Rekord $page[start] - $page[end] z $page[total] [wszystkich $page[total_pages] stron]<br>\n";
  106. }
  107.  
  108.  
  109. include("include/zajawka.php");
  110.  
  111. while ($result=$paging->result_assoc())
  112. {
  113. $color=$paging->print_color("#999999","#999999")
  114. ?>
  115. <?
  116. {
  117. echo "<tr><div align=\"center\">
  118. <td width=\"4%\">".$result['karta_id']."</td>
  119. <td width=\"16%\">".$result['przedmiot']."</td>
  120. <td width=\"10%\"><center><img src=../../../upload/hi/".$result['obrazek'].".jpg width='160'><br>".$result['nr_inw']." </center></td>
  121. <td width=\"14%\">".$result['autor']."</td>
  122. <td width=\"8%\">".$result['kat']."</td>
  123. // tutaj próbuje wywołać skrypt i nie wychodzi
  124. <td width=\"8%\">".zajawka($result['opis'], 200)." <a href='onclick="java script: nowe_okno('','Pełny opis','całkowity opis lub zdjęcie')"> [więcej]</a></td>
  125. <td width=\"8%\"><center><a href=\"karta.php?id=".$result['karta_id']."\">Pokaż kartę</a></center></td>
  126. </tr></div>";
  127. }
  128.  
  129. }
  130. echo" </table>\n";
  131. echo "<A HREF=\"szukaj.php?&page=1\">pierwsza&nbsp;</A>";
  132. echo $paging->print_link();
  133.  
  134. //FUNCTION
  135. function explode_keyword($q)
  136. {
  137. //trim
  138. $q=trim($q);
  139. $q=preg_replace("/[\s]+/"," ",$q);
  140.  
  141. $mode="AND";
  142. $q2=explode(" ",$q);
  143. for ($i=0;$i<count($q2);$i++) {
  144. $condition=$condition."nr_inw"." like '%".$q2["$i"]."%' ".$mode." ";
  145. }
  146. $condition=substr($condition,0,-4);
  147. return $condition;
  148. }
  149. ?>
  150. <?
  151. echo "<A HREF=\"szukaj.php?&page=$page[total_pages]\">ostatnia</A>";
  152. ?>
  153. <?php
  154. include("count.php")
  155. ?>
  156.  
tehaha
nie analizowałem Twojego kodu, ale jeżeli chcesz zmienne wyciągnąć z bazy danych i wstawić je do funkcji javascript (JAVA to NIE Javascript), to możesz przypisać wyciągnięte wartości z bazy do zmiennych i zrobić coś takiego:
  1. <script language="Javascript">
  2. <!--
  3. nowe_okno('<?php echo $url;?>','<?php echo $title;?>','<?php echo $description;?>');
  4. //-->
  5. </script>
askone
Cytat(danielk32 @ 17.08.2010, 12:19:03 ) *
mam zadeklarowaną funkcje w javie otwierającą nowe okno ale z poziomu Php nie umiem się do niej dostać funkcja nazywa się nowe_okno i pobiera kilka atrybutów, ale mi szczególnie zależy na zmiennej opis którą pobieram z bazy

  1. // tutaj próbuje wywołać skrypt i nie wychodzi
  2. <td width=\"8%\">".zajawka($result['opis'], 200)." <a href='onclick="java script: nowe_okno('','Pełny opis','całkowity opis lub zdjęcie')"> [więcej]</a></td>


Sprawdź to:

Kod
<td width=\"8%\">".zajawka($result['opis'], 200)." <a href="" onclick="nowe_okno('','Pełny opis','całkowity opis lub zdjęcie');"> [więcej]</a></td>


Pozdrawiam
danielk32
wyskakuje taki błąd:
  1. Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in /srv/home/y81390yb/public_html/zbiory2/historia/szukaj.php on line 122


i próbowałem coś takiego
  1. <td width=\"8%\">".zajawka($result['opis'], 200)."<a href ="java script: nowe_okno('','Pełny Opis','<? php echo ".$result['opis']?."')"> [więcej] </ a></td>


nadal lipa
Dapi
  1. <td width=\"8%\">".zajawka($result['opis'], 200)."<a href ="java script: nowe_okno('','Pełny Opis','<? php echo $result['opis'] ?>')"> [więcej] </ a></td>


questionmark.gif
danielk32
  1. <td width=\"8%\">".zajawka($result['opis'], 200)."<a href ="java script: nowe_okno('','Pełny Opis','<? php echo $result['opis'] ?>')"> [więcej] </ a></td>


Nie działa

wyskakuje:
Kod
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /srv/home/y81390yb/public_html/zbiory2/historia/szukaj.php on line 122

Dapi
<? php echo $result['opis']; ?> winksmiley.jpg
danielk32
Znowu błąd

Kod
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /srv/home/y81390yb/public_html/zbiory2/historia/szukaj.php on line 122

  1. <td width=\"8%\">".zajawka($result['opis'], 200)."<a href ="java script: nowe_okno('','Pełny Opis','<? php echo $result['opis']; ?>')"> [więcej] </ a></td>


nie działa ale przy:
  1. <td width=\"8%\">".zajawka($result['opis'], 200)."<a href='java script:nowe_okno('','Pełny Opis','dfgsdfgd')'> [więcej] </ a></td>


jest hiperłącze ale okno się nie pokazuje

Działa już wystarczyło zrobić coś takiego:
  1. <td width=\"8%\">".zajawka($result['opis'], 200)."<a href=\"java script:nowe_okno('','Pełny Opis','".$result['opis']."')\"> [więcej] </ a></td>


ale nie wszystkie karty wyświetla nie wiem czemu
askone
Masz może to gdzieś online?? Ciekawi mnie dlaczego robisz to poprzez nowe okno, document.write itp. Na obecnym etapie rozwoju sieci chyba lepiej zastosować jquery oraz jquery-ui...

Pomyśl o tym winksmiley.jpg


ps. A na koniec propozycja byś nie generował kodu html przez php. Zamiast robić echo "jakiś kod html" zrób po prostu czysty kod html i tylko atrybuty dynamiczne wstaw z pomocą php - unikniesz problemów z escape'waniem tekstów no i nie nabędziesz złych nawyków winksmiley.jpg

ps2. No i css.... Nie rób formatowania w html'u tylko wyrzuć to do pliku css...

Pozdrawiam
danielk32
Niestety używam Quick.Cms i to on mi sporo rzeczy narzuca, przyszedłem do pracy i dostałem stronę do moderacji a teraz ją poprawiam, adres strony to http://mzch.pl a baza w której grzebie to http://mzch.pl/zbiory2/historia/index.html

dzięki za radę

Kolejna sprawa, pobieram ze zmiennej ".$result['opis']." ciąg znaków i co któraś karta nie działa bo w ciągu znaków występuje "" i mi rozbija wszystko jak można sobie z tym poradzić?
askone
Cytat(danielk32 @ 17.08.2010, 14:19:57 ) *
Niestety używam Quick.Cms i to on mi sporo rzeczy narzuca, przyszedłem do pracy i dostałem stronę do moderacji a teraz ją poprawiam, adres strony to http://mzch.pl a baza w której grzebie to http://mzch.pl/zbiory2/historia/index.html

dzięki za radę


Nie dziwię się, że ją poprawiasz... winksmiley.jpg

edit:
Cytat
Kolejna sprawa, pobieram ze zmiennej ".$result['opis']." ciąg znaków i co któraś karta nie działa bo w ciągu znaków występuje "" i mi rozbija wszystko jak można sobie z tym poradzić?


Przeczytaj o stripslashes oraz o addslashes
danielk32
Kolejna sprawa, pobieram ze zmiennej ".$result['opis']." ciąg znaków i co któraś karta nie działa bo w ciągu znaków występuje "" i mi rozbija wszystko jak można sobie z tym poradzić?
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.