2

I have some scripts written in Python which upload files reads database and modify uploaded files. I want to make a web portal for doing the same work.

It is possible to call this Python script from the PHP code?

I found and here and also here but how to pass parameter in it? How will I pass uploaded file to it? or is it okay to leave that code into python script?

Python script generate interactive bulk result. How to revert back with that on PHP page?

I have tried to find answers and I've found many but I don't know the best way to do it.

Can someone please give me the best scenario to design this system?

EDIT : Problem Scenario

  • I to ask user to upload a file.
  • I'll query database on the basis of the info in that file.
  • File can have hundreds of units for which I have to query database and prompt user to choose related units.
  • Complete process is interactive up-to the numbers of units in the file.
  • On the basis of user selection I've modify the uploaded file and give it back to the user.
Community
  • 1
  • 1
Jatin Malwal
  • 5,133
  • 2
  • 23
  • 26
  • I've seen it. That problem is that I've lots of data as a result from my python script. How I'll send it back to PHP page? – Jatin Malwal Feb 18 '14 at 05:39
  • You return an array....`$tmp = exec('pyhon myscript.py $myvariables');`, then you do `foreach($tmp as $item): echo $item; endforeach;`... and in python you `import sys` then print sys.argv[1], sys.arv[2] and so on and so forth. – Ohgodwhy Feb 18 '14 at 05:41
  • I've mentioned in my Que both of the related questions. I want something more than that. – Jatin Malwal Feb 18 '14 at 05:41
  • I'm to make interactive app. Data from my scripts come in chunks and ask user to select one option and the same process happens. – Jatin Malwal Feb 18 '14 at 05:43

1 Answers1

5

There are many ways to solve this problem, just a few off the top of my head:

  1. Create a queue, where your PHP script deposits work items that your Python script reads, performs the work, and then updates a status table.

  2. Create an API for your Python script which your PHP script (or any other script) can consume.

  3. Dump your input into a directory which the Python script watches for data, and then writes the result to the file system where you can read and display it using PHP.

There are more scenarios you can use but as you haven't provided any information about the system it is difficult to recommend a solution. For example, do you need intermittent updates on the status of the work being done? Is the job something that can be queued or will you block your PHP application? Are the two scripts on the same system or are they distributed? How are you communicating between the two scripts?

The "best" can only be provided if you give us your system constraints.

Burhan Khalid
  • 169,990
  • 18
  • 245
  • 284
  • Okay I just edit my question and provide some more info. Thanks for the scenarios you mentioned. – Jatin Malwal Feb 18 '14 at 05:46
  • I m to search the content in db on the basis of content in file. Than revert back to the user with the option of choosing best option. I previously developed android and web apps using java. It's my first work in python and PHP. So how to do that? – Jatin Malwal Feb 18 '14 at 06:01