插入特定列的mysql数据库php

时间:2014-01-24 00:12:35

标签: php html mysql sql

当用户输入数字并单击按钮时,我想将数据输入我的mysql数据库,但输入特定行。例如,如果用户登录后称为“用户”,则输入的数据将进入名为“ticket”的列,该列与用户名“user”位于同一行。

我已经为它编写代码进入数据库但是在新行中:

用户输入数据的页面代码:

<?php require('check.php')?>
<html>
<head>
<title><?php echo $row['username']; ?> Profile</title>
</head>
<body>
<p style="float: right"><a href="logout.php">LOG OUT</a></p>
<?php
include ('connect.php');

$user_id= $_SESSION['id'];
$sql = "SELECT username FROM user WHERE user_id = '$user_id'";

$result = mysql_query($sql) or die('Query failed. ' . mysql_error());
$uname = mysql_fetch_array($result);

$user_id= $_SESSION['id'];
$sql = "SELECT email FROM user WHERE user_id = '$user_id'";

$result = mysql_query($sql) or die('Query failed. ' . mysql_error());
$uemail = mysql_fetch_array($result);

echo "Hello" . " " . $uname['username'];
?>


             <h1>Choose ticket Amount</h1>
             <hr />
             <form method="post" action="addticket.php">
             <label for="elliegoulding">Ellie Goulding Ticket Amount: </label>
             <input type="text" name="elliegoulding" max="3" maxlength="3" /><br />
             <br />
             <input type="submit" value="Add ticket"/>
             <br />
             <hr />
             <div id="footer">
             </div>
         </form>



</body>
</html>

处理信息并添加到db的php页面代码:

<?php
$elliegoulding = $_REQUEST["elliegoulding"];


$linkme = mysql_connect("mysql.cms.gre.ac.uk","ta210","*****");
if (!$linkme)
    die ("Could not connect to database");
mysql_select_db("mdb_ta210", $linkme);

$query = "INSERT INTO user (ticket) VALUES ('$elliegoulding, Ellie Goulding Tickets')";
mysql_query ($query, $linkme)
    or die ("Ticket purchase failed.");

echo ("You have just bought $elliegoulding Ellie Goulding tickets");

mysql_close($linkme);
?>

就像我说的那样,上面的代码工作并将其输入到数据库中,但只是进入一个新行。 任何帮助或建议都会很棒。

1 个答案:

答案 0 :(得分:2)

INSERT只会添加一个新行而你不想这样做。你需要更新一行。

......的一些事情:

$query = 'UPDATE user SET ticket="Ellie Goulding rocks!" WHERE username="'.$user.'"';

确保用户名是唯一的(数据库中不能包含2个“Pierre”,或者两个用户都会更新)。