您是否可以執行以下操作?使用SQL查詢
$query = "SELECT username, first_name, last_name, gender,
birthdate, city, state, picture, user_id
FROM mismatch_user
WHERE user_id = '" . $_SESSION['user_id'] . "'";
您是否可以執行以下操作?使用SQL查詢
$query = "SELECT username, first_name, last_name, gender,
birthdate, city, state, picture, user_id
FROM mismatch_user
WHERE user_id = '" . $_SESSION['user_id'] . "'";
我將與此一起去:爲什麼不:-)?
如果您遇到一些問題或例外情況,我們需要一些背景來展示您的代碼。
真正的問題是你在做什麼?總之YES將
如果你想運行具有隻是那麼查詢NO單獨不會,你首先需要連接到數據庫
mysql_connect('host', 'user', 'pass');
選擇一個數據庫運行鍼對
mysql_select_db('database');
查詢然後你就可以使用下面的代碼運行查詢,但你應該使用sprintf()
和mysql_real_escape_string()
構建查詢值出於幾個原因。
1)它會阻止不必要的數據進入查詢,只允許某些類型的數據,在這種情況下,%d
引用一個帶符號的int,因此只允許一個數字。
2)使用sprintf()
和mysql_real_escape_string()
將有助於防止SQL注入攻擊。
$query = sprintf("SELECT username, first_name, last_name, gender, birthdate, city, state, picture, user_id
FROM mismatch_user
WHERE user_id = %d", mysql_real_escape_string($_SESSION['user_id']));
$result = mysql_query($query);
while ($row = mysql_fetch_assoc($result)) {
echo $row['first_name'];
echo $row['last_name'];
}
我在我的項目上做過這樣的事情。爲了得到它才能正常工作試試這個:
foreach (array('user_id') as $varname) {
$user_id = (isset($_POST[$varname])) ? $_POST[$varname] : '';
}
與此有什麼問題:
做這個查詢,你需要包括這種因此它承認$ USER_ID之前? –
否 - 它會導致我們所知道的世界末日 - 請停止! –