PHP删除MySQL里一个表里面的行的代码

主机:localhost用户名:xauth密码:xauthpassword数据库:xauth删除xauth数据库中session表中的第一列accountid为$id的呢... 主机:localhost用户名:xauth密码:xauthpassword数据库:xauth
删除xauth数据库中session表中的第一列accountid为$id的呢一行。
之前的代码是这样的
<?php

$username = $_GET["username"];
$password = $_GET["password"];
date_default_timezone_set('Asia/Shanghai');
$con = mysql_connect('localhost', 'xauth', 'xauthpassword') or die(mysql_error());
mysql_query('set names utf8', $con);
mysql_query('use xauth', $con) or die(mysql_error());
$sql = 'select * from accounts where playername="' . $username . '"';
$res = mysql_query($sql, $con);
$row = mysql_fetch_assoc($res);
if (empty($row)) {
echo "not exist";
exit();
}
if ($row['realpw'] != $password) {
echo "password wrong";
exit();
}
$id = $row['id'];
$sql2 = 'select * from sessions where accountid=' . $id;
$res2 = mysql_query($sql2, $con);
$row2 = mysql_fetch_assoc($res2);
if (empty($row2)) {
=====要放在这,不管有没有都尝试删除accountid为$id的一行======
mysql_query('insert into sessions values ("' . $id . '","' . $_SERVER['REMOTE_ADDR'] . '","' . date('Y-m-d H:i:s') . '")');
} else {
mysql_query('update sessions set ipaddress="' . $_SERVER['REMOTE_ADDR'] . '", logintime=' . date('Y-m-d H:i:s') . '" where accountid=' . $id);
}
echo "success!";
?>
展开
 我来答
pangyiguang
推荐于2016-11-04 · TA获得超过1603个赞
知道小有建树答主
回答量:795
采纳率:100%
帮助的人:643万
展开全部
$username = $_GET["username"]; 
$password = $_GET["password"];
date_default_timezone_set('Asia/Shanghai');
$con = mysql_connect('localhost', 'xauth', 'xauthpassword') or die(mysql_error());
mysql_query('set names utf8', $con);
mysql_select_db('xauth',$con);
$sql = 'select * from accounts where playername="' . $username . '"';
$res = mysql_query($sql, $con);
$row = mysql_fetch_assoc($res);
if (empty($row)) {
    echo "not exist";
    exit();
}
if ($row['realpw'] != $password) {
    echo "password wrong";
    exit();
}
$id = $row['id'];
$sql2 = 'select * from sessions where accountid=' . $id;
$res2 = mysql_query($sql2, $con);
$row2 = mysql_fetch_assoc($res2);
if (empty($row2)) {
//=====要放在这,不管有没有都尝试删除accountid为$id的一行======
    mysql_query('delete from sessions where accountid='.$id,$con);
    mysql_query('insert into sessions values ("' . $id . '","' . $_SERVER['REMOTE_ADDR'] . '","' . date('Y-m-d H:i:s') . '")',$con);
} else {
    mysql_query('update sessions set ipaddress="' . $_SERVER['REMOTE_ADDR'] . '", logintime=' . date('Y-m-d H:i:s') . '" where accountid=' . $id,$con);
}
echo "success!";
阳光上的桥
2014-07-18 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21424 获赞数:65785
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
以下两行需要合并:
mysql_query('use xauth', $con) or die(mysql_error());
$sql = 'select * from accounts where playername="' . $username . '"';

合并为一行:
$sql = 'select * from xauth.accounts where playername="' . $username . '"';

理由:
无需选择数据库,可以把数据库加在SQL语句的表名前面既可。而且选择数据库应该使用mysql_select_db('xauth');这样的语句。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式