簡體   English   中英

通過HTML表單發送PHP if語句

[英]Send PHP if statement through HTML form

試圖允許管理控制台的用戶從HTML表單運行PHP if語句。

由於控制面板與第三方軟件集成,因此我們只有一種方法來選擇數據-使用PHP變量。

將通過表單發送的if語句的示例

$contact_details['Contacted'] == "Yes"

用戶將具有一個界面,該界面將使用完整的if語句填充HTML輸入字段,例如

$contact_details['Contacted'] == "Yes" && $contact_details['Country'] == "UK"

但是,發布表單時,if語句不能正確過濾結果。

echo $_POST["ifstatement"]."<br>"; //Show statement run - Remove when if works
if($_POST["ifstatement"]){ echo "Contact ID: ". $contact_details['id'] ." - Contact location: ". $contact_details['Country'] ." - "." Contacted?: ".  $contact_details['Contacted']."<br>"

它顯示應運行的語句,但是不運行查詢。

有什么辦法可以使它正常工作,還是我必須以其他方式做到這一點?

您的If-Statement未得到評估。 您必須使用eval()進行評估。 請不要盲目復制此示例:

<?php
$foo = '$result = ' . $_POST["ifstatement"] . ';';
eval($foo);
if ($result) {
    // ...
}
?>

但這是一個非常糟糕的Code Smell,如果您沒有正確清理輸入內容,就會創建一個巨大的遠程代碼執行錯誤。

因此,您應該重新考慮您的方法,因為這樣會更好,更安全。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM