我正在制作一个基于运气的网站,我想确保他们在旋转之前在他们的帐户上有足够的旋转。
我确实看到http://www.w3schools.com/php/php_mysql_select.asp,但它并不是我真正想要的。
我的这些行名称为:id username email password spins。
我可以从旋转中扣除金额但我无法将其旋转的确切数量放在PHP变量上以放入$ SESSION以用于其他页面。
到目前为止我有多少。
$numSpin = "SELECT * FROM $tbl_name WHERE spins";
然后把它放在$ SESSION
中$_SESSION['spinNum'] = $numSpin;
我将如何继续这样做?这不起作用。
答案 0 :(得分:1)
欢迎来到SO。
好像你对编码非常陌生,所以我会尽力帮助你。
以下是您可以使用的代码,我将在下面解释。
<?php
session_start();
$host = 'localhost'; $db = 'db-name'; $user = 'db-user'; $pw = 'db-pwd';
$conn = new PDO('mysql:host='.$host.';dbname='.$db.';charset=utf8', $user, $pw);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
try {
$tbl_name = 'table-name-here';
$un = $username;
$sql = "SELECT * FROM $tbl_name WHERE username=:un";
$query = $conn->prepare($sql);
$query->bindValue(':un', $un, PDO::PARAM_STR);
$query->execute();
$row = $query->fetch(PDO::FETCH_ASSOC);
$totalRows = $query->rowCount();
} catch (PDOException $e) {
die("Could not get the data: " . $e->getMessage());
}
$_SESSION['spinNum'] = $row['name-of-your-field-with-spin-numbers'];
?>
则...
if($_SESSION['spinNum'] >= 1) {
// allow them to do something
} else {
echo "I'm sorry. It looks like you don't have any spins left. Please try again later.";
}
此代码使用pdo_mysql编写。您可能希望阅读here。
第2行开始你的会话
第3-5行创建与数据库的连接。确保替换“db-name”,“db-user”&amp; “db-pwd”包含您的信息。
在第8行,将“table-name-here”替换为您的数据库表名
在第9行,您可以将“10”设置为您希望确保帐户持有人拥有的最低号码。
在第19行,将“your-field-with-spin-numbers”更改为数据库表中存储帐户用户可用旋转的字段的实际名称。
现在,您可以在其他网页上使用$_SESSION['spinNum']
。
不要忘记在任何要使用会话变量的页面顶部使用session_start();
。
快乐的编码!