Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][PHP] Includowanie pliku z parametrem
jasiek65
post
Post #1





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 25.05.2010

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


Witam,

Postanowiłem zrobić pierwszą stronę całkowicie samemu w php. Jednak nie mogę sobie poradzić z jedną rzeczą.

Doszedłem do momentu gdzie zaincludowanie pliku z parametrem za pomocą js np.
  1. /plik.php?x=23

Oczywiście nie jest to możliwe ,stąd moje pytanie jak można otrzymać ten efekt w inny sposób.
za pomocą metody get wybieram id z bazy mysql
  1. if (isset($_GET['x'])) {
  2. $x = (int) $_GET['x'];
  3. }


Widziałem w pewnym serwisie ,że webmaster użył ramki, jadnak ja potrzebuje to w js
  1. <script language="javascript" type="text/javascript" src="/plik.php?x=23">



Za pomoc z góry dziękuje snitch.gif

Pozdrawiam,
jasiek65 biggrin.gif

Ten post edytował jasiek65 30.10.2010, 10:59:16
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 17)
IceManSpy
post
Post #2





Grupa: Zarejestrowani
Postów: 1 006
Pomógł: 111
Dołączył: 23.07.2010
Skąd: Kraków

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


A co chcesz osiągnąć? Bo trochę to skomplikowane to co mówisz.


--------------------
Go to the top of the page
+Quote Post
markonix
post
Post #3





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


Kod
<script language="javascript" type="text/javascript" src="/plik.php?x=<?php echo $x;?>">

Może o to chodzi?


--------------------
Go to the top of the page
+Quote Post
jasiek65
post
Post #4





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 25.05.2010

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


Zapewne potrzebna była by jakaś funkcja żeby zastąpić
  1.  
  2. if (isset($_GET['x'])) {
  3. $x = (int) $_GET['x'];
  4. }

Napisałem taki skrypt który wyciąga zmienne po id:
  1. <?php
  2. if (isset($_GET['x'])) {
  3. $x = (int) $_GET['x'];
  4. } else {
  5. $x = 0;
  6. }
  7. if ($x> 0){
  8. require_once ('dane_baza.php"');
  9. $zapytanie = "SELECT `nazwa`,`liczba` FROM `cos` WHERE `id`='$x'";
  10. $result = mysql_query($zapytanie) or die('Błąd w zapytaniu takim a takim. Komunikat: '.mysql_error().'; Numer błędu: '.mysql_errno());
  11. while ($wiersz = mysql_fetch_row($result))
  12. {........


skrypt moge jedynie zaincludować za pomocą ramki.
Na wielu stronach są liczniki do wstawienia na www.
Wykorzystuje się do tego js właśnie ja bym chciał zaincludować mój skrypt do pliku js i aby user mógł go wstawić na swoją stronke

Nie mogę włączyć global register

Ten post edytował jasiek65 30.10.2010, 20:23:09
Go to the top of the page
+Quote Post
IceManSpy
post
Post #5





Grupa: Zarejestrowani
Postów: 1 006
Pomógł: 111
Dołączył: 23.07.2010
Skąd: Kraków

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


Ale nadal nie wiadomo co chcesz osiągnąć... o.O ? Przynajmniej ja nie wiem.

Ten post edytował IceManSpy 30.10.2010, 22:56:59


--------------------
Go to the top of the page
+Quote Post
CuteOne
post
Post #6





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


JS to tak naprawdę "przykrywka" dla php smile.gif wiele serwisów wykorzystuje fakt, że poprzez <img src="plik.php"> można wywołać skrypt php.

np wrzucając na "cudzą" stronę takie cuś [ps. można to zrobić w inny sposób ale ten jest najłatwiejszy]
  1. <script src="http://example.com/skrypt.js"></script>


skrypt.js:
  1. document.write('<img src="http://example.com/jakis.php?id=100" width=0 height=0 border=0>'); //z palca wiec pewnie nie dziala tak jak powinien ;]


Ten post edytował CuteOne 31.10.2010, 04:24:11
Go to the top of the page
+Quote Post
CuteOne
post
Post #7





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


my nie mamy dysleksji... przepisz [lub poproś brata/siostrę, żeby przepisali] cały post o.O
Go to the top of the page
+Quote Post
jasiek65
post
Post #8





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 25.05.2010

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


Wiem ,ale niechciałbym ,aby to był obrazek ponieważ formularz by nie zadziałał
Chce właśnie użyć tej "przykrywki" do wstawienia zawartości pliku php na strone w sekcji body

  1. /plik.php?x=jakieś id
  2.  





Za pomocą ramek mógłbym otrzymać podobny efekt jednak wolałbym użyć do tego js




Wydaje mi się ,że wystarczyłoby dodać ' document.write ' a potem zaincludować plik jako js
jednakże to nie działa

Prosze o pomoc chociaż częściową, bardzo mi na tym zależy


Może cały kod pliku php nie będzie potrzebny ,jednak wrazie "W" podam:)

  1. <?php if (isset($_GET['x'])) { $x = (int) $_GET['x']; } else { $x = 0; }
  2. if ($x> 0){ require_once ('dane_baza.php"'); $zapytanie = "SELECT `nazwa`,`liczba` FROM `cos` WHERE `id`='$x'";
  3. $result = mysql_query($zapytanie) or die('Błąd w zapytaniu takim a takim. Komunikat: '.mysql_error().';
  4. Numer błędu: '.mysql_errno());
  5. while ($wiersz = mysql_fetch_row($result)) { echo '<div id="obrazek"><a href="'. $wiersz[1] .'" target="_blank"><img alt="'. $wiersz[0] .'" id="thumb" src="http://open.thumbshots.org/image.pxf?url='. $wiersz[1] .'"></a></div> <div id="link"><a href="'. $wiersz[1] .'" target="_blank">'. $wiersz[0] .'</a><div>'; } echo "<form action=...... > </form>"; } else{ ... } ?>




else zrobiłbym tak

  1. document.write("podaj id");
Go to the top of the page
+Quote Post
CuteOne
post
Post #9





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


ehhh... mogę ci pomóc ale nie bardzo wiem o co ci chodzi ;/

Chcesz wywołać skrypt .php z poziomu JS, który pobierze coś z bazy i wyświetli formularz?
Go to the top of the page
+Quote Post
jasiek65
post
Post #10





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 25.05.2010

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


Dokładnie,

Po wstawieniu odsyłacza js na strone przez usera wyświetli dane ,a pod nim formularz

oto screen:



aha czy jest taka możliwość aby userzy mogli za pomocą css modyfikować formularz?
oczywiście każdy zaznacznik jest w divach i ma id

Cytat(CuteOne @ 2.11.2010, 17:54:55 ) *
ehhh... mogę ci pomóc ale nie bardzo wiem o co ci chodzi ;/

Chcesz wywołać skrypt .php z poziomu JS, który pobierze coś z bazy i wyświetli formularz?


Tak

Czy wie ktoś jak rozwiązać ten problem?

Ten post edytował jasiek65 5.11.2010, 21:45:28
Go to the top of the page
+Quote Post
markonix
post
Post #11





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


Cytat(CuteOne @ 2.11.2010, 17:54:55 ) *
wywołać skrypt .php z poziomu JS, który pobierze coś z bazy i wyświetli formularz?


Ajax (skorzystaj z jQuery albo innej biblioteki).


--------------------
Go to the top of the page
+Quote Post
CuteOne
post
Post #12





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


On chce dać użytkownikom możliwość wstawienia swojego skryptu JS na stronę, więc AJAX wywali błąd [względy bezpieczeństwa] smile.gif

Cytat
Tak

Czy wie ktoś jak rozwiązać ten problem?


Zrób tak jak ci pisałem.... tu masz kawałek kodu JS

  1. var HTP = document.location.protocol;
  2. var URL = HTP + '//www.expample.pl/';
  3.  
  4. var d=document;
  5. var c=d.getElementsByTagName('body')[0];
  6. var w=d.createElement('form'); // formularz
  7.  
  8.  
  9.  
  10. var i=d.createElement('img'); //obrazek z src do wywołania PHP
  11. i.src= URL + 'id=12345';
  12. i.style.border='0';
  13. c.insertAfter(i,c.firstChild);


W ten sposób wywołujesz skrypt PHP [src w obrazku] oraz tworzysz formularz
Go to the top of the page
+Quote Post
jasiek65
post
Post #13





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 25.05.2010

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


Wszystko by było w porządku ale napotkałem pewne problemy:

1.Chciałbym ,aby użytkownicy mogli dowolnie formatować w css ten formularz i wyświetlanie co nie jest możliwe jeżeli wstawimy jako obrazek.
2.Niechciałbym żeby to był obrazek ponieważ tam są odsyłacze i musiałbym nadać całemu obrazkowi <a href=""></a>
Go to the top of the page
+Quote Post
CuteOne
post
Post #14





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


OBRAZEK TO TYLKO "WYWOŁYWACZ" SKRYPTU PHP

wygląd i to co ma się znaleźć w formularzu tworzysz tak jak wyżej opisałem za pomocą JS...... ile razy można to samo powtarzać -__-

Ten post edytował CuteOne 6.11.2010, 20:07:13
Go to the top of the page
+Quote Post
jasiek65
post
Post #15





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 25.05.2010

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


Mógłby mi ktoś wytłumaczyć dokładnie gdzie umieścić ten kod bo w js jestem lama.
Go to the top of the page
+Quote Post
zegarek84
post
Post #16





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

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


wszystko ładnie pięknie ale trochu zboczyliście z prostego rozwiązania [potem możesz sobie poczytać np. o JSONP - gdzie nie chodzi o sam json a o załączanie danych]...

więc tak.... jeśli załączasz dynamicznie w zależności od warunków na stronie to znacznik script'u załącz do strony przez DOM - czyli tak jak miałeś przykład wyżej z obrazkiem... i adres sobie wstawisz jaki chcesz.... a jeśli id jest przypisane użytkownikowi to niech oni sobie na sztywno wpiszą w kodzie html'a ten script.... <script language="javascript" type="text/javascript" src="/plik.php?x=id_forma_usera">...

i dalej zawartość tego skriptu jest dosyć ważna gdyż... jeśli funkcje do obsługi tej zawartości miałeś zawarte już wcześniej na stronie to w skrypcie tym musi być wywołanie tejże funkcji z parametrem - a jeśli nie masz zdefiniowanych funkcji to w tym pliku php musisz też je zawrzeć do zdekodowania...

najprościej dla przypadku gdy funkcje masz już zawarte na stronie to przykładowa zawartość skryptu który generujesz w php:
Kod
obslugaOdpowiedziSkryptuPhp('tutaj jest ciąg tekstowy co Cię interesuje lub obiekt json')

i najporosciej dla Ciebie będzie gdy przekażesz to jako tekst i chyba jako html'a gdzie potem dasz innerHTML w odpowiednie miejsce o określonym id... ale jako, że w html'u mogą być i pojedyncze i podwójne apostrofy to nie bardzo wiadomo jakim apostrofem objąć parametr funkcji.... ależ wiadomo... po prostu zakoduj html'a do jakiejś postaci bez apostrofów, po czym po stronie js go zdekodujesz....

po prostu w skrypcie php musisz generować poprawny javascript!!!!


--------------------
Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.

Go to the top of the page
+Quote Post
jasiek65
post
Post #17





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 25.05.2010

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


chciałem coś takiego zrobić ale nie działa
  1. <?php if (isset($_GET['x'])) { $x = (int) $_GET['x']; } else { $x = 0; }
  2. if ($x> 0){ require_once ('dane_baza.php"'); $zapytanie = "SELECT `nazwa`,`liczba` FROM `cos` WHERE `id`='$x'";
  3. $result = mysql_query($zapytanie) or die('Błąd w zapytaniu takim a takim. Komunikat: '.mysql_error().';
  4. Numer błędu: '.mysql_errno());
  5. while ($wiersz = mysql_fetch_row($result))
  6. { echo 'document.write("<div id="obrazek"><a href="'. $wiersz[1] .'" target="_blank"><img alt="'. $wiersz[0] .'" id="thumb" src="http://open.thumbshots.org/image.pxf?url='. $wiersz[1] .'"></a></div> <div id="link"><a href="'. $wiersz[1] .'" target="_blank">'. $wiersz[0] .'</a><div>' "); } echo "document.write("<form action=...... > </form>")"; } else{ ... } ?>
  7.  


nawet gdy dam apostrofy przed "
Go to the top of the page
+Quote Post
CuteOne
post
Post #18





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


Pozostaje ci jedno.. podszkolić się w pisaniu JS i PHP lub zapłacić komuś za napisanie tego skryptu... bo pojęcia o tym nie masz ;/
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 05:20