Αδυναμία ανάλυσης δεδομένων από Python CGI script σε PHP

ψήφοι
-1

Έχω ένα PHP script το οποίο έχει μια απλή φόρμα με δύο εισόδους. Θέλω να περάσουν αυτές τις δύο εισόδους πίσω σε Python CGI script, να ανακτήσετε το αποτέλεσμα και να το εκτυπώσετε ξανά στην ίδια σελίδα PHP (χωρίς ανανέωση της σελίδας). Έχω διαβάσει πολλές απαντήσεις από τους ανθρώπους που χρησιμοποιούν AJAX και προσπάθησε, αλλά δεν φαίνεται να μπορεί να προχωρήσει περαιτέρω. Σύνολο αρχάριος με AJAX και CGI scripting. Θα μου άρεσε πολύ αν κάποιος μπορούσε να βοηθήσει!

Ιδανικό εξόδου - να επιστρέψει την τιμή «αποτέλεσμα» από το σενάριο Python για να εμφανιστεί στη θέση του «αποτελέσματος» div tag.

Εδώ είναι ο κώδικας PHP μου:

«»»

<?php

print <html>;
print <script type=\text/javascript\ src=\http://code.jquery.com/jquery-1.4.4.min.js\></script>;

print <script>
function python_process() {
    var cancellationrate = $('input[name=cancellationrate]');
    var waitingtime = $('input[name=waitingtime]');
    $.ajax({
        url: \/cgi-bin/calculate.py\,
        type: \POST\,
        data: {\cancellationrate\ : cancellationrate, \waitingtime\: waitingtime },
        success: function(response){
                    $(\#result\).html(response);
                }
        });
};
</script>;
print <link rel=\stylesheet\ href=\https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css\ integrity=\sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T\ crossorigin=\anonymous\>
;
print <br/>;
print <div class=\container\>;
            print <form name=\calculate\ id=\calculate\ action=\\ method=\post\>;
                print <div class=\form-group row\>;
                    print <label for=\cancellationrate\ class=\col-sm-2 col-form-label\>Cancellation Rate</label>;
                    print <div class=\col-lg-10\>;
                        print <input type=\text\ style=\width: 400px\ class=\form-control\ name=\cancellationrate\ id=\cancellationrate\ placeholder=\Expected % Change in Cancellation Rate\>;
                    print </div>;
                print </div>;
                print <div class=\form-group row\>;
                    print <label for=\waitingtime\ class=\col-sm-2 col-form-label\>Waiting Time</label>;
                    print <div class=\col-lg-10\>;
                        print <input type=\text\ style=\width: 400px\ class=\form-control\ name=\waitingtime\ id=\waitingtime\ placeholder=\Expected % Change in Waiting Time\>;
                    print </div>;
                print </div>;
                print <center><button type=\submit\ onclick=\python_process()\ class=\btn btn-primary\>Submit</button></center>;
            print </form>;
print </div>;

print <div id=\result\></div>;


?>

«»»

Και εδώ είναι calculate.py σενάριο CGI μου:

«»»

#!/anaconda3/bin/python3

import cgi
print (Content-type: text/html\n\n)

data = cgi.FieldStorage()

cancellation_rate =  int(form.getvalue('cancellationrate'))
waitingtime = int(form.getvalue('waitingtime'))

result = cancellation_rate * waitingtime

print(result)

«»»

Δημοσιεύθηκε 24/10/2019 στις 12:59
πηγή χρήστη
Σε άλλες γλώσσες...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more