ugrás a tartalomhoz

Adatok tovább POST-olása

Kevlar · 2006. Jan. 13. (P), 13.12
Sziasztok

Keresgéltem a fórumban, de nem találtam a problémámra megoldást. (Bár lehet, hogy rossz szavakra kerestem)
Tehát van egy űrlap, POST-al elküldi az adatai egy php -nak. Itt ezek az adatok kétfelé mennek, az egyik út, hogy ezeket az adatokat egy az egyben tovább kell küldeni egy másik php-nek.
Űrlapozás rejtett mezőkkel nem lehetséges, itt nincs felhasználó, gondoltam arra, hogy fogom $HTTP_POST_VARS tartalmát, és egy header() segítségével elküldöm a másik php-nek (tehát hozzá írom). De ez meg GET küldés.

POST megoldás nincs?

Köszönöm a segítséget előre is.
 
1

<Nincs cím>

Kevlar · 2006. Jan. 13. (P), 13.18
"Űrlapozás rejtett mezőkkel nem lehetséges, itt nincs felhasználó"

Ezt úgy értem, hogy nincs, aki megnyomja a submit gombot. De submit esemény máshogy előidézhető?
2

curl

Poetro · 2006. Jan. 13. (P), 13.27
curl seígtségével megoldható a POST adatok továbbküldése másik oldalnak. Nézd meg a hozzászólásokat.
--------
Poetro
3

RE: Curl

Kevlar · 2006. Jan. 13. (P), 13.37
Köszönöm, ez jó megoldásnak tűnik.
4

vagy include

Hojtsy Gábor · 2006. Jan. 13. (P), 17.33
Ha azonos szerver környezetben van, akkor persze a legegyszerűbb az include segítségével történő betöltés. Nincs plusz egy HTTP kérés, minden gyorsabban megy.
5

Re + curl

Kevlar · 2006. Jan. 13. (P), 17.59
A másik php tartalmát nem ismerem, csak tovább kell küldenem az adatokat. Így a include nem jó.

Probálkozok a curl -el, de nem sikerül:
Van két fájl, az első:

<?php
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,"curl02.php");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS,"valtozo=adat"); //ez a POST-olt adat


curl_exec ($ch);
curl_close ($ch);
?>
A másik (curl02.php) pedig egyszerűen kiírná egy print-el a POST-ban kapott valtozót.
De mégsem müködik. Nem is lép tovább a curl02.php-re.
(Egyáltalán tovább kéne lépnie?)

Természetesen fut a curl, curl_version() -al ki tudom írni a verzióját.
6

Nem kell tovébblépni

Poetro · 2006. Jan. 13. (P), 18.23
Eddig azt mondtad, el kell küldeni az adatokat a másik oldalnak. Ez tökléletesen meg is teszi szerintem (persze érdemes kiíratni a tartalmat a curl02.php-ben egy fájlba, hogy lásd, mi is történt). Ha ki akarod iratni, amit a curl2 visszaad, akkor a curl-t annak megfelelően kell használni.
--------
Poetro
7

Re

Kevlar · 2006. Jan. 13. (P), 18.28
Azért akarom kiiratni, hogy tudjam, hogy el lett-e küldve.
Sosem használtam még curl-t, kiváncsi voltam, megkapja-e így.

Rengeteget kerestem, de nem találtam más megoldást, meg tudod mondani, hogyan kell akkor használni, hogy ki is tudjam írni?
Köszönöm.
8

curl02.php

Poetro · 2006. Jan. 13. (P), 18.42

<?php
$fp = fopen('post.txt', 'a');
$output = var_export($_POST, true);
fwrite($fp, date('r')."\n");
fwrite($fp, $output);
fwrite($fp, "\n\n");
fclose($fp);
?>
--------
Poetro
9

<Nincs cím>

Kevlar · 2006. Jan. 13. (P), 19.11
Bocsánat, de továbbra sem értem.
A txt létrejön, de az adatokat nem kapja meg.
(Lefuttatom az elsőt, de nem megy tovább, lefutattom a másodikat, létrejön a txt, de nem kapja meg a POST-olt adatot)
10

Futtatás

Poetro · 2006. Jan. 13. (P), 19.40
Elméletben csak az elsőt kell lefuttatni, és már akkor létre kell jönnie a txt-nek, ha az elsőt jól csináltad meg. Nézd végig a curl oldalán a példákat, és azokkal próbálkozz.
--------
Poetro
11

Megoldottam...

Kevlar · 2006. Jan. 13. (P), 20.43
Bár nem értem igazándiból...
CURLOPT_URL -nél nem volt elég, hogy megadtam azt, hogy "curl02.php" (hiába vannak egy könyvtárban), hanem teljes elérési út kell.
Elvoltam vele egésznap, nem gondoltam, hogy ilyesmi a megoldás.

Ennek biztos így kell müködni, de számomra ez nagyon nem logikus, és nem is volt egyértelmű.

Köszönöm mindenkinek a segítséget!