亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python Post - PHP 請求

Python Post - PHP 請求

烙印99 2022-01-18 15:33:56
我正在嘗試創建一個 php 頁面,該頁面從我的 python 代碼中獲取數據并將它們顯示為表格。r = requests.post('http://localhost/index.php', data={"iv":a,"ven":b,"hem":c,"card":d,"ecg":e})print(r.text)在上面的代碼中,我發布數據然后打印它以檢查一切是否正常。我的 r.text 輸出<table><tr><th>IV Pump</th><th>Ventilator</th> <th>Heart Monitor</th><th>Cardiac Machine</th><th>Echocardiogram</th></tr><tr><td>off</td><td>on</td><td>off</td><td>off</td><td>off</td></tr></table> 這似乎很好,因為我可以得到 a、b、c、d、e(基本上是開/關)。但是,當我打開 index.php 時,我看不到那些“on”和“off”。我是服務器、PHP 等方面的新手。我的錯誤可能非常愚蠢。我應該將帖子數據存儲在某個地方嗎?我的 index.php:<?php$iv=$_REQUEST['iv'];$ven=$_REQUEST['ven'];$hem=$_REQUEST['hem'];$card=$_REQUEST['card'];$ecg=$_REQUEST['ecg'];echo '<table>';echo  '<tr>';echo    '<th>IV Pump</th>';echo    '<th>Ventilator</th> ';echo    '<th>Heart Monitor</th>';echo    '<th>Cardiac Machine</th>';echo    '<th>Echocardiogram</th>';echo  '</tr>';echo  '<tr>';echo    '<td>';echo $iv;echo '</td>';echo    '<td>';echo $ven;echo '</td>';echo    '<td>';echo $hem;echo '</td>';echo    '<td>';echo $card;echo '</td>';echo    '<td>';echo $ecg;echo '</td>';echo  '</tr>';echo '</table>';?>我的 r.text 沒問題,但是在網頁中我看不到請求數據,表格單元格是空的。有什么區別?據我所知 r.text 返回頁面內容,所以 index.php 一定是錯誤的,我猜它是關于存儲數據的。
查看完整描述

1 回答

?
素胚勾勒不出你

TA貢獻1827條經驗 獲得超9個贊

當您向服務器發出HTTP 請求時,該服務器會將呈現的網頁返回給該用戶。這意味著requests將得到正確的響應。


但是,當您在瀏覽器中打開網頁時,您正在向該服務器發出新請求,該服務器將再次呈現該頁面。由于這次您沒有傳遞$_REQUEST['iv']etc. 值,因此該表將顯示為空白。


您有幾個選項,具體取決于您要執行的操作:


將信息存儲在數據庫中

您可以將該信息存儲在數據庫中。例如,一些數據庫是SQLite3或MySQL。我省略了確切的數據庫插入/讀取實現,因為它在您選擇的數據庫之間有所不同。


一個簡單的方法可能是:


<?php


$iv=$_REQUEST['iv'];

// insert other variables etc.


// Check if this is a POST request

if ($_SERVER['REQUEST_METHOD'] === "POST") {

   // INSERT DATA INTO YOUR DATABASE AS APPROPRIATE

   // You can also echo back the table if you want


// Else it might be a GET request

} elseif ($_SERVER['REQUEST_METHOD'] === "GET") {

   // READ DATA FROM DATABASE

   // echo table with the data from the database

}



?>


使用網址參數

或者,您可以使用URL 參數對數據進行編碼,如下所示:


# In your Python code

# Notice that requests.post changed to requests.get and data changed to params

r = requests.get('http://localhost/index.php', params={"iv":a,"ven":b,"hem":c,"card":d,"ecg":e})


# You can now access this specific URL to see the populated table

# The URL will look something like http://localhost/index.php?iv=a&ven=b/

print(r.url)

請注意,這需要您訪問該特定 URL,并且如果您訪問沒有參數的基本 URL(即 )則不起作用https://localhost/index.php。


查看完整回答
反對 回復 2022-01-18
  • 1 回答
  • 0 關注
  • 164 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號