Frage

Ich verwende Drupal 6 mit dem Webform -Modul installiert.

Ich muss in der Lage sein, von PHP -Ergebnissen bis hin zu einer Webform aus der Ferne zu veröffentlichen. Pseudocode:

<?php
//File: remote_script_not_hosted_on_the_same_server_as_drupal.php

$results = array(
'name' => 'testname',
'age' => '6',
);

$node = 5;

$url_to_drupal = 'http://remote_server.com/drupal-6.2';

insert_into_webform($results, $node, $url_to_drupal);

Natürlich ist dieses Beispiel nicht perfekt, aber Sie (hoffentlich) haben die Idee.

Wie würdest du das machen?

Ich habe ein Problem in der Drupal -Warteschlange eröffnet: http://drupal.org/node/1082016

Ich bin besorgt über diese beiden Felder, die meine Fernbedienung ungültig machen:

------WebKitFormBoundaryKIiNRZCPZIFlYWKc
Content-Disposition: form-data; name="form_build_id"

form-58f36748bfffd6752f204eadf1ba87c9
------WebKitFormBoundaryKIiNRZCPZIFlYWKc
Content-Disposition: form-data; name="form_token"

e4becb726ea858b6914980b9142b7f30
War es hilfreich?

Lösung

Ich habe es nicht versucht, aber Kapitel 19 von Pro Drupal -Entwicklung (Ich habe die 2. Ausgabe) bezieht sich auf die Verwendung XML-RPC um dies zu tun. Es verwendet die Seite xmlrpc.php, die Teil der Standardinstallation ist, um seine Arbeit zu erledigen.

Andere Tipps

Haben Sie versucht, PHP zu verwenden, um die Postdaten manuell zu senden? Hier ist ein Ausschnitt von http://www.webmasterworld.com/php/3164561.htm

$server= 'www.someserver.com';
$url = '/path/to/webform/posturl';
$content = 'name1=value1&name2=value2';
$content_length = strlen($content);
$headers= "POST $url HTTP/1.0\r\nContent-type: text/html\r\nHost: $server\r\nContent-length: $content_length\r\n\r\n";
$fp = fsockopen($server, $port, $errno, $errstr);
if (!$fp) {
    return false;
}
fputs($fp, $headers);
fputs($fp, $content);
$ret = "";
while (!feof($fp)) {
    $ret .= fgets($fp, 1024);
}
fclose($fp);
print $ret;

Natürlich würde dies fehlschlagen, wenn Sie eine Form von Captcha im Formular verwenden, und wird derzeit auch fehlschlagen, wenn Sie authentifiziert werden müssen, um eine Antwort zu veröffentlichen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit drupal.stackexchange
scroll top