做个人员数据库,可以更改人员照片,图片是路径存到数据库的,但以下代码总是不对:
<?php
$rs;                                         
$strSQL;
$ID=$_GET['ID']; 
$strSQL="select * from user where id=".$ID;                               
$rs=mssql_query($strSQL,$link);                 
$rs_row=mssql_fetch_row($rs); 
?><p align="right">上传图片:<td align=left height=22 width="447">
<input name="cngPic" type="file">
<input type="hidden" name="Picture" value="<?=$Picture?>"> 
<input name="UpPic" type="submit" onClick="return CheckPic();" value=" 上传图片"><?php echo $msg;?></td><?php                     
      
if ($_POST[UpPic]){ 
$NewName;        
$tempPro;              
$Picture=$_POST[Picture];              $NewName=date(Ymdhms).strrchr($_FILES[AddPic][name],"."); 
$tempPro="../Pic/".$NewName;   
if(!move_uploaded_file($_FILES[AddPic][tmp_name],$tempPro))  
{   
$msg="图片上传失败!"; 
}else{ 
$msg="图片上传成功!";   
}
$Picture=$NewName; 
//echo $Picture; 
}else{ 
$Picture=$rs_row[9]; 

if ($_POST && empty($_POST[UpPic])){     
$strSQL="update user set Picsrc='".$Picture."'";                                         
$strSQL.="where id=".$ID; 
$rs=mssql_query($strSQL,$link);

?> 原有的记录更改后还是原来的$rs_row[9]这个值,不是后来重新上传的图片路径

解决方案 »

  1.   

    if ($_POST[UpPic]){ 
    $NewName;        
    $tempPro;              
    $Picture=$_POST[Picture];            $NewName=date(Ymdhms).strrchr($_FILES[AddPic][name],"."); 
    $tempPro="../Pic/".$NewName;  
    if(!move_uploaded_file($_FILES[AddPic][tmp_name],$tempPro))  
    {  
    $msg="图片上传失败!"; 
    }else{ 
    $msg="图片上传成功!";  

    $Picture=$NewName; 
    //echo $Picture; 
    }else{ 
    $Picture=$rs_row[9]; 

    这段应该在前面吧,要不隐含域就是空值了