将会话 - 用户名 - 传递给mysqli

时间:2014-06-16 17:31:11

标签: php mysqli

我正在努力解决这个问题...我创建了一个自定义登录/注册,我正在为我的用户扩展它的个人资料页面。

在我的页面上,我可以看到使用的用户名,这是非常早期的阶段。

$_SESSION['username']

我以一种形式使用它:

<p>Welcome <?php echo htmlentities($_SESSION['username']); ?>!</p>
<p>
<form method="POST" action="./includes/save_profile.php" >
Username:<input type = "text" name="username" id "title"/><br>
Title: <input type = "text" name="title" id="title"/><br>
First Name: <input type="text" name="firstname" id="firstname"/><br>
Last Name: <input type="text" name="lastname" id="lastname"/><br>
Address 1: <input type="text" name="address1" id="address1"/><br>
Address 2: <input type="text" name="address2" id="address2"/><br>
Address 3: <input type="text" name="address3" id="address3"/><br>
Country: <input type="text" name="country" id="country"/><br>
Post Code: <input type="text" name="postcode" id="postcode"/><br>
Telephone: <input type="text" name="telephone" id="telephone"/><br>
Age:<input type="text" name="age" id="age"/><br>
<input type="submit" value="Save Changes"><p></p>
</form>
<?php else : ?>

我的save_profile.php包含:

// include stuff here

$username=$_SESSION['username'];
$title=$_POST["title"];
$firstname=$_POST["firstname"];
$lastname=$_POST["lastname"];
$address1=$_POST["address1"];
$address2=$_POST["address2"];
$address3=$_POST["address3"];
$country=$_POST["country"];
$postcode=$_POST["postcode"];
$telephone=$_POST["telephone"];
$age=$_POST["age"];


$save_profile_query = $mysqli->prepare("UPDATE members SET title = ?,firstname = ?, lastname = ?, address1 = ?, address2 = ?, address3 = ?, country = ?, postcode = ?, telephone = ?, age = ? WHERE username = ?");

if (!$save_profile_query)
{
print $save_profile_query->error;
}

$save_profile_query->bind_param('sssssssssss',$title,$firstname, $lastname, $address1, $address2, $address3, $country, $postcode, $telephone, $age, $username);

if ($save_profile_query->execute())
{
print "Record Updated";
}
else{
print $save_profile_query->error;
}

我最终希望能够在页面打开时加载配置文件,允许他们编辑它然后提交更改...我将不得不谷歌如何做到这一点。宝贝步骤,因为我了解它是如何工作的。

当我对用户名进行硬编码时,它会起作用。有什么我不能以与表单字段相同的方式获取会话?

我已经完成了一些教程,w3schools和一些堆栈交换,并且所有帐户都应该有效吗?我确实尝试将其包含在查询中,但也失败了。

0 个答案:

没有答案