Mysql 使用SQL查询
你能做到以下几点吗Mysql 使用SQL查询,mysql,Mysql,你能做到以下几点吗 $query = "SELECT username, first_name, last_name, gender, birthdate, city, state, picture, user_id FROM mismatch_user WHERE user_id = '" . $_SESSION['user_id'] . "'"; 我将这样说:为什么不:-) 如果您遇到一些
$query = "SELECT username, first_name, last_name, gender,
birthdate, city, state, picture, user_id
FROM mismatch_user
WHERE user_id = '" . $_SESSION['user_id'] . "'";
我将这样说:为什么不:-)
如果您遇到一些问题或异常,我们需要一些上下文来理解您的代码。真正的问题是您想做什么?简而言之,是的会的 如果您试图仅使用该查询运行该查询,那么否仅此一项是行不通的,您首先需要连接到数据库
mysql_connect('host', 'user', 'pass');
选择要对其运行查询的数据库
mysql_select_db('database');
然后,您可以使用下面的代码运行查询,但是出于几个原因,您应该使用sprintf()
和mysql\u real\u escape\u string()
构建查询值
1) 它将通过只允许某些类型的数据来防止不需要的数据进入您的查询,在这种情况下,%d
指有符号的整数,因此只允许一个数字
2) 使用sprintf()
和mysql\u real\u escape\u 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'];
}
我在我的项目中做过类似的事情。要使其正常工作,请尝试以下操作:
$query = "SELECT username, first_name, last_name, gender, birthdate, city, state, picture, user_id FROM mismatch_user
WHERE (user_id = '".mysql_real_escape_string($user_id)."')
";
在执行此查询之前,您需要将其包括在内,以便它识别$user\u id:
foreach (array('user_id') as $varname) {
$user_id = (isset($_POST[$varname])) ? $_POST[$varname] : '';
}
这有什么问题?不-这会导致我们所知道的世界末日-请停止!