簡體   English   中英

我如何發布並獲取一個PHP變量

[英]How can I post and get a php variable

我使用以下php代碼獲取上傳文件的文件擴展名:

$ext = substr($filename, strpos($filename,'.'), strlen($filename)-1); // Get the extension from the filename.

但是現在我想將此變量發布到另一個php文件中,該文件將所有數據保存在數據庫中。

if (isset($_POST["submit"])) {
  $insertSQL = sprintf("INSERT INTO sounds (id, title, artist, category, subcategory, keywords, upload, format, size, download, rating, ip, date) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
                       GetSQLValueString($_POST['id'], "text"),
                       GetSQLValueString($_POST['title'], "text"),
                       GetSQLValueString($_POST['artist'], "text"),
                       GetSQLValueString($_POST['categoryID'], "text"),
                       GetSQLValueString($_POST['subcategoryID'], "text"),
                       GetSQLValueString($_POST['keywords'], "text"),
                       GetSQLValueString($_FILES['upload']['name'], "text"),
                       GetSQLValueString($_FILES['upload']['name'], "text"),
                       GetSQLValueString($_FILES['upload']['size'], "text"),
                       GetSQLValueString($_POST['download'], "text"),
                       GetSQLValueString($_POST['rating'], "text"),
                       GetSQLValueString($_POST['ip'], "text"),
                       GetSQLValueString($_POST['date'], "text"));

我知道這可能是一個愚蠢的問題。 但是如何發布並獲取此變量?

$filename = $_FILES['upload']['name'];
$ext = substr($filename, strpos($filename,'.'), strlen($filename)-1);

//將值插入數據庫

GetSQLValueString($ext, "text")

你為什么想這么做? 您無需執行POST即可保存到數據庫。 只需將其他PHP代碼重寫為一個函數,然后調用該函數即可。

僅當您希望在兩台計算機之間進行通信時(例如,網站的訪問者與服務器之間或服務器與另一台服務器之間進行通信),才應該執行POST。

您是否考慮過使用$ _GET? 這要容易得多。 但是請小心使用$ _REQUEST(我想說最好不要使用它)。

如果要發布,可以考慮使用cURL。 PHP手冊中有很多示例,因此在此不再贅述。

另外,使用jQuery到AJAX發布甚至更容易。 僅需三行代碼,您就可以發布變量並獲得響應。 查看[http://api.jquery.com/jQuery.post/](jQuery手冊),其中也包含示例。 您可能會使用起點的語法是:

$.post("test.php", { name: "John", time: "2pm" },
   function(data) {
   alert("Data Loaded: " + data);
 });

我個人將首先嘗試AJAX發布...

暫無
暫無

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

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