![](/img/trans.png)
[英]Get data from mysql table and use them in "IN" in sql query (PHP)
[英]How to get parameters from a URL and use them in a MySQL query in PHP
因此,我將創建一個頁面,該頁面上以/?ref=123
類型結尾的用戶登陸到URL。 然后,我要實現的是在MySQL查詢中使用該引用123
,如下所示: SELECT foo FROM table WHERE table.ref = 123
我遇到的問題是,如果我使用$_GET
來獲取變量,則會中斷我的SQL查詢(顯然!)
SELECT foo FROM table WHERE table.ref = $_GET['ref'];
失敗,因為$_GET
不是MySQL函數。
麻煩的是,我想基於ref
值動態創建頁面內容,但是我不知道如何。
任何幫助表示感謝。
時區GMT + 13,因此回復可能會很慢:)
**********編輯**********
由於我可能沒有在OP中提供足夠的信息,因此下面是我正在努力的代碼:
<?php
global $wpdb;
header('Content-Type: text/html; charset=utf-8');
include "../../../wp-config.php";
$get_donation_amount = "select SUM(amount) AS total_donations from SaveContactForm7_1 where ref = 123 ";
$get_donation_amount_result = $wpdb->get_results($get_donation_amount);
$total_donation = isset($get_donation_amount_result[0]->total_donations) && $get_donation_amount_result[0]->total_donations !="" ? $get_donation_amount_result[0]->total_donations :"0" ;
?>
我需要做的是添加一個對ref
值的URL調用,並將其添加到與SQL查詢代碼一起顯示的位置。 然后,知道他的“參考”價值的特定捐助者將看到與他無關的結果。
使用PHP7可能看起來像這樣
$ref = $_GET['ref'] ?? null;
$sth = $dbh->prepare('SELECT foo FROM table WHERE table.ref = ?');
$sth->execute([$ref]);
$orders = $sth->fetchAll();
您可能應該有一些處理錯誤的方法(未設置參考)
請注意,最后一個變量(查詢結果)稱為訂單。 我不知道您期望的結果是什么,但這只是為了說明,將其稱為特殊的(實際上代表什么)而不是“行”,“結果”或類似內容是有意義的。
請注意,PHP 7引入了所謂的空合並運算符,該運算符簡化了isset語句
PHP7的
$ref = $_GET['ref'] ?? null;
PHP <7
$ref = isset($_GET['ref']) ? $_GET['ref']: null;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.