出乎你意想不到的问题,最近怪事特别多。。。

出乎你意想不到的问题,最近怪事特别多。。。



[复制到剪切板]
CODE:
if(isset($_POST['id'],$_POST['vip'],$_POST['viptime'])){
    
$viptime=$_POST['viptime']*3600;
    
$vip=$_POST['vip'];
    
$id=$_POST['id'];
    
$time=time();
    if(
$vip>$time){
    
$editvip=round($viptime+$vip);
    }
    else{
    
$editvip=round($viptime+$time);
    }
    if(
ereg("[^0-9]",$viptime)){
    echo 
"<script>alert('时间为必为整数,重新输入'); window.location.href='AD_UM2.php?vip=".$id."';<\/script>";
    }
    else{
    
mysql_select_db($database_e316$e316);
    
$query_editvip "UPDATE `index_user` SET `vip` = '$editvip' WHERE `index_user`.`id` = '$id' LIMIT 1 ";
    
$goeditvip mysql_query($query_editvip$e316) or die(mysql_error());
    }
    if(isset(
$goeditvip)){
    echo 
"提升VIP操作成功,请关闭此窗口";
    echo 
$editvip;
    }
    else{
    echo 
"<script>alert('提升VIP操作失败,请重试'); window.location.href='AD_UM2.php?vip=".$id."';<\/script>";
    }
} ;


以上怪事你看出问题了没...我把所有代码拆分来测试效果,除了下面这段外(下面的这段好似没有起到任何作用。。。就等于没有一样),其它的都能正常运行

[复制到剪切板]
CODE:
mysql_select_db($database_e316$e316);
    
$query_editvip "UPDATE `index_user` SET `vip` = '$editvip' WHERE `index_user`.`id` = '$id' LIMIT 1 ";
    
$goeditvip mysql_query($query_editvip$e316) or die(mysql_error()); ;

本想是我SQL写错了,但我放到mysql里一试,无语了,能正常的用。。。
再改改,更无语,下面这段能正常运行。。。

[复制到剪切板]
CODE:
mysql_select_db($database_e316$e316);
$query_edit "UPDATE `index_user` SET `pas` = '$e' WHERE `index_user`.`id` = '$pas' LIMIT 1";
$edit mysql_query($query_edit$e316) or die(mysql_error()); ;

虽然第二段代码似乎没有做任何事一样,但到了最后一步

[复制到剪切板]
CODE:
if(isset($goeditvip)){
    echo 
"提升VIP操作成功,请关闭此窗口";
    echo 
$editvip;
    }
    else{
    echo 
"<script>alert('提升VIP操作失败,请重试'); window.location.href='AD_UM2.php?vip=".$id."';<\/script>";
    } ;


结果是“提升VIP操作成功,请关闭此窗口”...........

天啊,我不知道怎么办了,请教各位高手是否能指点指点。。。
最近见鬼了我

$query_editvip = "UPDATE `index_user` SET `vip` = '$editvip' WHERE `index_user`.`id` = '$id' LIMIT 1 ";
这句可能是条件没有成立,所以数据没有修改,但是也是执行成功的。所以 if(isset($goeditvip)) 也是成立的。
可以将那个sql语句打印出来,再执行一次。看看影响到多少列。
如履薄冰

条件也是成立的啊
UPDATE `index_user` SET `vip` = 1521415121 WHERE `index_user`.`id` = '2' LIMIT 1

我把这句更改成了实事数据,到MYSQL中执行,居然可以用了,数据被改了,昏啊

但为什么在网页里就是不行

我的数据库里面  vip 这个字段是 (BIGINT 20)

那可能是实际语句的和你上面的不一样吧。你先echo $query_editvip  输出看看咯。
如履薄冰

mysql_connect()先连数据库吧。