Archief - PHP/JS: Forms submitten zonder user-interactie

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

JohnBeton

Legacy Member
Hi,

ik heb het volgende nodig (tips om dit op te zetten zjin dus welkom):
via ssh (eigenlijk: vanop een linux command prompt) zou een bepaald script moeten inloggen op een (mijn) website. Na inloggen wordt die user dan doorverwezen naar een 2e pagina waar opnieuw data gePOST moet worden, om op een 3e pagina te komen waar wat info moet aangepast & ingelezen (+opgeslagen) moet worden.

Het grote probleem zit em in het POSTen van die data.. Het is mogelijk, dat weet ik (denk aan spambots :)) maar als ik zoek op 'php POST' dan kom ik vooral uit op pagina's die me uitleggen hoe ik $_POST kan inlezen.. Niet echt nuttig dus.

Het zou handig zijn moest ik alles met PHP kunnen oplossen: dan kan die ssh-command prompt gewoon 'php postpagina.php' uitvoeren om de hele actie in gang te zetten.

(reden voor automatisatie is dat die regelmatig & zonder user interactie moet kunnen gebeuren).

Alvast bedankt voor de tips!

RpR

Legacy Member
JohnBeton zei:
Hi,

ik heb het volgende nodig (tips om dit op te zetten zjin dus welkom):
via ssh (eigenlijk: vanop een linux command prompt) zou een bepaald script moeten inloggen op een (mijn) website. Na inloggen wordt die user dan doorverwezen naar een 2e pagina waar opnieuw data gePOST moet worden, om op een 3e pagina te komen waar wat info moet aangepast & ingelezen (+opgeslagen) moet worden.

Het grote probleem zit em in het POSTen van die data.. Het is mogelijk, dat weet ik (denk aan spambots :)) maar als ik zoek op 'php POST' dan kom ik vooral uit op pagina's die me uitleggen hoe ik $_POST kan inlezen.. Niet echt nuttig dus.

Het zou handig zijn moest ik alles met PHP kunnen oplossen: dan kan die ssh-command prompt gewoon 'php postpagina.php' uitvoeren om de hele actie in gang te zetten.

(reden voor automatisatie is dat die regelmatig & zonder user interactie moet kunnen gebeuren).

Alvast bedankt voor de tips!
zijt ge misschien toch beter crontabs eens te bekijken.

JohnBeton

Legacy Member
:)

Het gaat em niet om het uitvoeren van het script (dat zou idd met crontab gebeuren) maar wel om het POSTen van forms ;)

Smokyke

Legacy Member
Ben geen krak in javascript maar ik denk dat het mogelijk is om via de url te submitten. Weet ook niet direct hoe :s

JohnBeton

Legacy Member
dJeez zei:
Als je het bij PHP wil houden kan je via de curl extensie zonder enig probleem data gaan posten.

http://be2.php.net/curl
Ziet er inderdaad uit wat ik nodig heb..

Zit hier nu echter al een poos te knoeien met cURL, en het wil maar niet lukken.. Ik heb de indruk dat er helemaal niets gePOST wordt..

De code:
PHP:
$params="loginform=true&Name=xxx&password=xxx&lang=en&save=true&frame_url=&submit=save&ret_url=".$ret;

$user_agent = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)";

$ch = curl_init();    // initialize curl handle
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$params);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,2);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);// this line makes it work under https
$result=curl_exec ($ch);


curl_close ($ch);
echo $result;

Dit pas ik momenteel rechtstreeks toe op de login.cgi pagina, maar ik wordt helemaal niet ingelogd.. user & pass zijn juist ;)
Heb voor de zekerheid alle velden van de form opgenomen in de parameters, maar zonder succes..

dJeez

Legacy Member
Het kan zijn dat die login met cookies werkt hé, check de CURLOPT_COOKIEJAR en CURLOPT_COOKIEFILE opties maar eens...
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan