Das abrufen von POST-Daten von externen Quelle in einem PL-SQL-Prozedur

EDIT ~ ich habe meine Frage selbst beantwortet unten in der EDIT Sektion, nicht zu beantworten, da fühle ich mich falsch, wenn ich die Punkte für die Beantwortung meiner eigenen post =/

Ich versuche einen Weg zu finden, um die übergabe von Parametern an diese Prozedur über eine URL

    create or replace procedure extinput(KEY in varchar2 := 'KEY',NAME in varchar2 := 'NAME') is
    l_apex_url varchar2(4000);

    begin
    htp.p('Hello extinput');
    htp.p(KEY);
    --htp.p('NAME');
    htp.p(NAME);
    --l_apex_url:= 'http://myhost:myport/pls/apex/extinput;
    --l_apex_url:= 'google.com'; 
    --owa_util.redirect_url(l_apex_url);

    end extinput;

Wenn ich stecken Sie die URL:

    http://horizon.lcc.edu:7777/pls/apex/extinput

in meinem browser dann die Seite dispays:

    Hello extinput KEY NAME

Das ist gut für die Bestätigung, dass ich den Aufruf der Prozedur über eine url, aber jetzt im arbeiten, vorbei an ein paar Variablen, um seine Parameter.

Ich möchte wissen, ob ich die Werte in der URL, [GET] (wohl eher nicht) oder ob es einen Weg gibt, um reteive den [POST] - Daten aus einem Formular auf einem externen server, zum Beispiel so:

    <form Method="POST" action="http://horizon.lcc.edu:7777/pls/apex/extinput" name="form1">
        <P><b>This form has three parameters, which matches the number of parameters the procedure view_http_post_fixed has.</b>
        <table><tr><td>Session Id:</td>
                       <td><input type="text" name="SESSION_ID" value="9582274473829998340">        </td>
            </tr>
            <tr><td>Key:</td>
                <td><input type="text" name="KEY" id="KEY" value="1109"></td>
            </tr>
            <tr><td>Name:</td>
                <td> <input type="text" name="NAME" id="NAME" value="Jeff Eberhard"></td>
            </tr></table>
    <input value="Submit" type="submit">
    </form>

Jede Hilfe oder "point s in die richtige Richtung", sind SEHR willkommen =)

$$ BEARBEITEN $$

Ok so habe ich erfolgreich bekommen übergebenen post-Daten, die in meinem pl-sql-Prozedur

    create or replace procedure extinput(KEY in varchar2 := 'KEY',NAME in varchar2 := 'NAME') 
    is
        l_apex_url varchar2(4000);
    begin
        htp.p('Hello extinput');

        htp.p(KEY);
        htp.p(NAME);

        insert into post_table (col2, col3 ) values(KEY, NAME);
    end extinput;

Zu diesem Schluss kommen fühle ich mich wie ich aus dieser Frage komplizierter ist es dann nötig zu sein. Sorry, wenn das so ist, aber wenigstens dieses problem ist nun gelöst.

Fehler wurden ausgelöst, weil ich das senden war 3 Parameter, aber nur codiert zwei in dem Verfahren. So entfernen Sie entweder eine Eingabe aus dem Formular, oder fügen Sie einen Dritten parameter Bereich. hier ist das vollendete form:

    <form Method="POST" action="http://horizon.lcc.edu:7777/pls/apex/extinput" name="form1">
        <P><b>This form has three parameters, which matches the number of parameters the procedure view_http_post_fixed has.</b>
        <table>
            <tr><td>Key:</td>
                <td><input type="text" name="KEY" id="KEY" value="1109"></td>
            </tr>
            <tr><td>Name:</td>
                <td> <input type="text" name="NAME" id="NAME" value="Jeff Eberhard"></td>
            </tr></table>
    <input value="Submit" type="submit">
    </form>
  • Urgh. Ist dies eine Akademische Frage, oder sind Sie tatsächlich für eine form der Verarbeitung der web-Seite PLSQL gespeicherte Prozedur?
  • Ich nicht ganz verstehen, was du meinst mit "Akademische Frage", dies ist nicht für eine Schule-Zuordnung oder etwas wenn es das ist, was Sie Fragen. Ich bin das hinzufügen einer Schaltfläche, um separate web-Anwendung, die Daten aus dem Formular in dieser app, und [hoffentlich] bringen Sie es zu diesem Verfahren über form action URL . Das Verfahren ist unsichtbar und verarbeiten die Daten dann den Benutzer zu einer Seite mit entweder eine Bestätigung des Erfolgs, oder einer Ankündigung des Versagens.
  • Toll, dass du es gelöst hast! Ich denke, Sie sollten Ihre eigene Frage zu beantworten, obwohl, und es akzeptieren! Egal wie 'dumm' oder klein es auch sein mag - gelöst ist gelöst!
InformationsquelleAutor Kamron K. | 2011-10-04
Schreibe einen Kommentar