Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][PHP]przekazywanie zmiennej z PHP do JS
alpork2
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 13.11.2012

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


Witajcie

mam następujący problem z takim kodem:

plik t1.php
  1. <?php
  2. if ($_POST['detailsSelect'])
  3. echo $_POST['detailsSelect'];
  4.  
  5. echo '<form action="" method=POST>';
  6. $query="Select * from `Company` ORDER BY `Name` ASC";
  7. $wynik=WykonanieBezFetch($query);
  8. echo '<select name="detailsSelect" id="detailsSelect">';
  9. while ($Nazwa=mysql_fetch_array($wynik)){
  10. echo '<option value="'.$Nazwa['id'].'">'.$Nazwa['Name'].'</option>';
  11. }
  12. echo '</select>';
  13. echo '<input type="submit"/>';
  14. echo '</form>';
  15. <a href="java script:void(0);" NAME="My Window Name" title=" My title here " onClick=window.open("child3.php","Ratting","width=550,height=170
  16. ,left=150,top=200,toolbar=1,status=1,");>Click here to open the child window</a>
  17. ?>


plik child3.php

  1.  
  2. <script langauge="javascript">
  3. function post_value(){
  4. opener.document.f1.p_name.value = document.frm.c_name.value;
  5. var x=opener.document.getElementById("detailsSelect");
  6. var option=document.createElement("option");
  7. option.text=document.frm.c_name.value;
  8. option.selected=true;
  9. var value=option.text;
  10. location.href="nextpage.php?name="+value;
  11. option.value=200;
  12. try
  13. {
  14. // for IE earlier than version 8
  15. x.add(option,x.options[null]);
  16. }
  17. catch (e)
  18. {
  19. x.add(option,null);
  20. }
  21. self.close();
  22. }
  23.  
  24. <title>(Type a title for your page here)</title>
  25. </head>
  26.  
  27. <body >
  28.  
  29. <tr><td align="center"> Your name<input type="text" name="c_name" size=12 > <input type=button value='Submit' onclick="post_value();">
  30. </td></tr>
  31. </table></form>
  32. </body>
  33. </html>


i plik nexpage.php

  1. <?php
  2. $idek=NewClient($_GET['name']);
  3. ?>


zmienna $idek to zwracane id po wykonaniu polecenia INSERT INTO ...
gdybym w plikucnexpage wyświetlił tą zmienną bez problemu zmienna ta przyjmie wartość id wpisanego rekordu.

Potrzebuje w pliku child3 pozyskać tą zmienną i niestety nie wiem jak ...

Główny założenie kodu

w pliku t1 w polu select wyświetlam nazwy z tabeli Company ale value pola option jest wartość ID. W przypadku kiedy jakiejś wartości nie ma klikam na przycisk który powoduje wyświetlenie okienka popup z formularzem ... tak aby dopisać brakującą wartość do tabeli. po wypełnieniu formularza następuje zapis danej wartości w tabelę a zapisana wartość jest ustawiana w polu select (plik t1.html) jako selected. Dzieje się to przez java script w pliku child3
  1. var x=opener.document.getElementById("detailsSelect");
  2. var option=document.createElement("option");
  3. option.text=document.frm.c_name.value;
  4. option.selected=true;


i teraz value dla takiej warości jest definiowane przez linijkę:
  1. option.value=200;


i teraz całe sedno ... zamiast cyferki "200" chcę uzyskać cyferkę, która jest zmienną $idek w plik nexpage.php.. Nie mam pojęcia jak się do tego zabrać ... czy możecie mi pomóc ?
dzięki
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
b4rt3kk
post
Post #2





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Wiesz co jest w tym zawiłego? Użycie JS - jest to zupełnie bez najmniejszego sensu, pobranie danych JS i przekierowanie z $_GET? Jeśli nikt inny w tym temacie się nie wypowiada, znaczy że również bladego pojęcia nie ma o co Ci chodzi. Ja tylko starałem Ci się pomóc, a Ty narzekasz, mimo że poświęcam Ci swój czas.

  1. function getXMLHttpRequestObject()
  2. {
  3.  
  4. var wersjeMSXML = new Array(
  5. "MSXML2.XMLHTTP.6.0",
  6. "MSXML2.XMLHTTP.5.0",
  7. "MSXML2.XMLHTTP.4.0",
  8. "MSXML2.XMLHTTP.3.0",
  9. "MSXML2.XMLHTTP",
  10. "Microsoft.XMLHTTP"
  11. );
  12.  
  13. try {
  14. return new XMLHttpRequest();
  15. }
  16. catch(e) {
  17. for (var indeks in wersjeMSXML) {
  18. try {
  19. return new ActiveXObject(wersjeMSXML[indeks]);
  20. }
  21. catch(e) {
  22. }
  23. }
  24. return null;
  25. }
  26. }
  27.  
  28.  
  29. function startGETRequest(url, onComplete, onEnd)
  30. {
  31.  
  32. var XMLHttpRequestObject = getXMLHttpRequestObject();
  33.  
  34. if (XMLHttpRequestObject) {
  35. XMLHttpRequestObject.open("GET", url);
  36. XMLHttpRequestObject.onreadystatechange = function()
  37. {
  38. if (XMLHttpRequestObject.readyState == 4) {
  39. if (XMLHttpRequestObject.status == 200) {
  40. var responseXML = XMLHttpRequestObject.responseXML;
  41. var responseText = XMLHttpRequestObject.responseText;
  42. onComplete(responseText, responseXML);
  43. }
  44. delete XMLHttpRequestObject;
  45. XMLHttpRequestObject = null;
  46. onEnd();
  47. }
  48. }
  49. XMLHttpRequestObject.send(null);
  50. }
  51.  
  52. }
  53.  
  54. function post_value(){
  55. opener.document.f1.p_name.value = document.frm.c_name.value;
  56. var x=opener.document.getElementById("detailsSelect");
  57. var option=document.createElement("option");
  58. option.text=document.frm.c_name.value;
  59. option.selected=true;
  60. var value=option.text;
  61.  
  62. var url = "nextpage.php";
  63. id = (new Date()).getTime();
  64. url += "?name=";
  65. url += value;
  66. url += "&?" + id;
  67. url = encodeURI(url);
  68. startGETRequest(url, onComplete, onEnd);
  69.  
  70. option.value=200;
  71. try
  72. {
  73. // for IE earlier than version 8
  74. x.add(option,x.options[null]);
  75. }
  76. catch (e)
  77. {
  78. x.add(option,null);
  79. }
  80. self.close();
  81. }
  82.  
  83. function onComplete(responseText, responseXML)
  84. {
  85. alert(responseText);
  86. }
  87.  
  88. function onEnd() {}


Do nextpage.php dodaj tylko echo.

  1. <?php
  2. echo $idek=NewClient($_GET['name']);
  3. ?>
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: 27.12.2025 - 20:22