Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem ... wysyłanie danych POST bez formularza
broU
post 31.07.2004, 12:37:15
Post #1





Grupa: Zarejestrowani
Postów: 71
Pomógł: 0
Dołączył: 3.07.2004

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


korzystałem z tego
http://vengeance.r4m80.cjb.net/index.php?p...what=view&id=12

no i nie mam szczerze pojęcia jak to zmodyfikowac , zeby przeslac na localhoscie dane z jednego pliku (1.php) do drugiego (2.php) ... modyfikowalem ten kod na rozne sposoby i nie chce dzialac ... nie wywala zadnych bledow , po prostu laczy i laczy ...

PS : i skad wziac dlugosc POST ? czego to ma byc dlugosc ?
Go to the top of the page
+Quote Post
FiDO
post 31.07.2004, 15:37:03
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Cytat(broU @ 2004-07-31 13:37:15)
PS : i skad wziac dlugosc POST ? czego to ma byc dlugosc ?

Wielkosc danych ktore przesylasz POST'em w bajtach. Dane POST wygladaja mniej wiecej tak:
Kod
zmienna=wartosc&zmienna2=wartosc2

etc.
To ma byc dlugosc wlasniego tego ciagu.

BTW znacznie prosciej jest to zrobic z pomoca CURL'a. Nie trzeba sie wtedy martwic o rozmiar danych, wszystko jest automatycznie obliczane.


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
broU
post 1.08.2004, 15:01:43
Post #3





Grupa: Zarejestrowani
Postów: 71
Pomógł: 0
Dołączył: 3.07.2004

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


a możesz podac jakies zrodlo informacji o tym CURL'u ?
Go to the top of the page
+Quote Post
FiDO
post 1.08.2004, 16:36:12
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Jasne... http://pl2.php.net/manual/pl/ref.curl.php
Niestety php.net ma jakis problem z serwerami i nie ma najwazniejszej czesci manuala, czyli komentarzy, w ktorych zawsze jest mnostwo przykladow.
Wieczorem jak nie zapomne postaram sie przytargac jakis malutki przykladzik wyslania POST'a.


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
broU
post 1.08.2004, 20:10:51
Post #5





Grupa: Zarejestrowani
Postów: 71
Pomógł: 0
Dołączył: 3.07.2004

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


po angielsku ... no cóż , jakos dam sobie radę (:

czekam na przykładzik(i) (: z góry dzięki .
Go to the top of the page
+Quote Post
Vengeance
post 1.08.2004, 21:21:39
Post #6





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

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


broU:

masz formularz:
(przyjmijmy, że plik skrypt.php znajduje się w http://localhost/strona/skrypt.php wraz z formularzem.)
  1. <form action="skrypt.php?what=add" method="post">
  2. <input type="type" name="tytul">
  3. <input type="type" name="autor">
  4. <input type="submit" value"dodaj news">
  5. </form>


A oto kod php pliku dodaj_news.php:

  1. <?php 
  2.  $url = 'localhost'; 
  3.  $fp = fsockopen($url, 80); 
  4.  $out = &#092;"POST /strona/skrypt.php?what=add HTTP/1.0rn\"; 
  5.  $out .= &#092;"Host: $urlrn\"; 
  6.  $out .= &#092;"Content-Type: application/x-www-form-urlencodedrn\"; 
  7.  // patrz niżej* 
  8.  $out .= &#092;"Content-Length: 27rn\"; 
  9.  $out .= &#092;"rn\"; 
  10.  // patrz niżej**
  11.  $out .= &#092;"tytul=fajny_news&autor=broUrn\"; 
  12.  $out .= &#092;"Connection: Closernrn\"; 
  13.  fwrite($fp, $out); 
  14.  while (!feof($fp)) 
  15.  { 
  16. $end .= fgets($fp, 128); 
  17.  } 
  18.  fclose($fp); 
  19.  echo $end;
  20. ?>

teraz objaśnienia.

gwazdki w objaśnieniu oznaczają dany fragment z kodzie oznaczony tą samą gwiazdką biggrin.gif

W fsockopen nawiązujesz połączenie z localhostem (lub innym serwerem)

* tu podajesz długość sciągu **. Długość czyli liczba znaków. możes zrobić strlen()
** tu podajesz zmienne POST tak jak byś wpisywał w URL

jak jeszcze coś ci nie działa lub nie rozumiesz to napisz.


--------------------
Go to the top of the page
+Quote Post
berdyk
post 2.08.2004, 07:19:07
Post #7





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 30.05.2003

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


[quote=FiDO,2004-07-31 16:37:03] tiredsmiley.gif [QUOTE=broU,2004-07-31 13:37:15] Dane POST wygladaja mniej wiecej tak:
Kod
zmienna=wartosc&zmienna2=wartosc2

etc. [/quote]
Sorki ale to jest łańcuch metody GET a nie POST


--------------------
PHP @ all.
<? while ($cash==0) { $work=0; } ?>
Go to the top of the page
+Quote Post
FiDO
post 2.08.2004, 08:05:09
Post #8





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Tak sie sklada jakos, ze oba wygladaja tak samo...

Przykladu nie bylo, bo nie bylo mnie juz jednak w necie wczoraj. Teraz jestem, ale na praktykach biggrin.gif ale sprobuje z pamieci jak by przyklad wyzej wygladal za pomoca CURL'a:
  1. <?php
  2.  
  3. $curl = curl_init('http://www.domena.pl/plik.php');
  4. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  5. curl_setopt($curl, CURLOPT_POST, 1);
  6. curl_setopt($curl, CURLOPT_POSTFIELDS, &#092;"tytul=costam&autor=costam\");
  7.  
  8. $dane = curl_exec($curl);
  9.  
  10. ?>

Prawda, ze prosciej ?

A mozna jeszcze prosciej, jak sie napisze do tego prosta klase.
Ja cos takiego zrobilem i teraz wyglada to mniej wiecej tak:
  1. <?php
  2.  
  3. $curl = new Http(&#092;"http://www.domena.pl/\");
  4.  
  5. $dane = $curl->POST('plik.php', &#092;"tytul=costam&autor=costam\");
  6. // lub tak jesli trzeba GET'a
  7. $dane = $curl->GET('plik.php');
  8.  
  9. ?>


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
broU
post 2.08.2004, 09:56:50
Post #9





Grupa: Zarejestrowani
Postów: 71
Pomógł: 0
Dołączył: 3.07.2004

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


Vengeance - wszystko ok , działa jak należy (:

FiDo - coś jest nie tak , cały czas wywala mi błąd
Fatal error: Call to undefined function: curl_init() in ...

Ten post edytował broU 2.08.2004, 10:40:22
Go to the top of the page
+Quote Post
rogrog
post 2.08.2004, 11:48:56
Post #10





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

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


@broU: jak jest "call to undefined function" to pewnie nie zainstalowałeś rozszerzenia exclamation.gif


--------------------
Go to the top of the page
+Quote Post
FiDO
post 2.08.2004, 11:55:27
Post #11





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Dokladnie tak.. zapomnialo mi sie wspomniec, ze tego nie ma w standardzie... sorki cool.gif


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
broU
post 2.08.2004, 22:43:32
Post #12





Grupa: Zarejestrowani
Postów: 71
Pomógł: 0
Dołączył: 3.07.2004

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


tzn. co mam zrobić , żeby to odpalić questionmark.gif
Go to the top of the page
+Quote Post
Dabroz
post 2.08.2004, 22:49:11
Post #13





Grupa: Zarejestrowani
Postów: 286
Pomógł: 0
Dołączył: 1.11.2003
Skąd: Poland, Płock

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


Przeczytać manual?


Eeehh.. jeżeli to Twój serv, to usuń ; przed danym extension, no a jeżeli nie, to musisz prosić admina.


--------------------
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 Wersja Lo-Fi Aktualny czas: 18.08.2025 - 15:17