$sql="update clientcompte set mot_de_pass='$mot_de_pass',remot_de_pass='$remot_de_pass',cilivite='$cilivite',telephone='$telephone',
     portable='$portable',adress='$adress',post='$post',ville='$ville' where email='$email'"; 这个语句执行后数据库的信息mot_de_pass和remot_de_pass的信息被删除了,其他信息可以修改,这是什么原因啊?
mot_de_pass和remot_de_pass是password格式,和这个有没有关系啊?

解决方案 »

  1.   

    UPDATE语句不会"删除",只会"更新"。估计$mot_de_pass、$remot_de_pass两个变量的值是空的。
      

  2.   

    刚我在表格<input 中给mot_de_pass和remot_de_pass加了id=‘’ ,现在remot_de_pass可以更新,mot_de_pass 还是没有,奇怪啊!
      

  3.   

    lz应该是修改用户资料,又不想修改密码吧?可以加个判断
    if($mot_de_pass==''&&$remot_de_pass=='')
    {
        $sql="update clientcompte set mot_de_pass='$mot_de_pass',cilivite='$cilivite',telephone='$telephone',
      portable='$portable',adress='$adress',post='$post',ville='$ville' where email='$email'";  }elseif($remot_de_pass==$mot_de_pass){
        $sql="update clientcompte set mot_de_pass='$mot_de_pass',remot_de_pass='$remot_de_pass',cilivite='$cilivite',telephone='$telephone',
      portable='$portable',adress='$adress',post='$post',ville='$ville' where email='$email'";  }
      

  4.   

    我也是初学,不知道如何验证,是想修改密码mot_de_pass和remot_de_pass是密码和密码确认
      

  5.   

    我用POST传过来的
    <?php
    session_start();
    include("indexbase.php");
    include("conn.php");
    @$email=$_SESSION[email];
    @$mot_de_pass = $_POST['mot_de_pass'];
       @$remot_de_pass = $_POST['remot_de_pass'];
       @$cilivite = $_POST['cilivite'];
       @$telephone = $_POST['telephone'];
       @$portable = $_POST['portable'];
       @$adress = $_POST['adress'];
       @$post = $_POST['post'];
       @$ville = $_POST['ville'];
       @$pays = $_POST['pays'];这是前面的代码
      

  6.   

    还有一个问题想顺便问一下,javascript不知道下面哪种写法对,但我的密码两次输的不一样都不提示我if((form.remot_de_passe.value)!=(form.mot_de_passe.value)){    
        alert("Votre mot de pass est different !");
        form.remot_de_passe.focus();
        return(false);
        }

    if(document.getElementById('mot_de_pass').value!=document.getElementById('remot_de_pass').value){    
        alert("Votre mot de pass est different !");
        form.remot_de_passe.focus();
        return(false);
        }
      

  7.   

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>测试</title>
    </head><body>
    <form action="" method="post" enctype="multipart/form-data" name="form1" onSubmit="checkform()">
    <p>
    <label for="mot_de_pass"></label>
    <input type="text" name="mot_de_pass" id="mot_de_pass">
    </p>
    <p>
    <input type="text" name="remot_de_pass" id="remot_de_pass">
    <input type="submit" name="button" id="button" value="提交">
    </p>
    </form>
    <script language="javascript">
    function checkform()
    {
    var mot_de_pass=document.getElementById('mot_de_pass').value;
    var remot_de_pass=document.getElementById('remot_de_pass').value;
    if(mot_de_pass!=remot_de_pass){   
    alert("Votre mot de pass est different !");
    document.form1.remot_de_passe.focus();
    return(false);
    }
    }
    </script>
    </body>
    </html>
      

  8.   

    还有表单的html代码也发上来。
    php代码中加入下面三行代码,看看POST数组的数据:
    echo "<pre>\n";
    print_r($_POST);
    echo "</pre>";
    另外:@$email=$_SESSION[email];
    //这一行明显有问题
      

  9.   

    <?php
    session_start();
    include("indexbase.php");
    include("conn.php");
    @$email=$_SESSION[email];
    //$mot_de_pass = $_REQUEST['mot_de_pass'];
    @$mot_de_pass = $_POST['mot_de_pass'];
       @$remot_de_pass = $_POST['remot_de_pass'];
       @$cilivite = $_POST['cilivite'];
       @$telephone = $_POST['telephone'];
       @$portable = $_POST['portable'];
       @$adress = $_POST['adress'];
       @$post = $_POST['post'];
       @$ville = $_POST['ville'];
       @$pays = $_POST['pays'];
       
       echo "<pre>\n";
    print_r($_POST);
    echo "</pre>";
       
    if(isset($_POST['mot_de_pass']) || isset($_POST['remot_de_pass']) || isset($_POST['cilivite']) || isset($_POST['telephone'])
         || isset($_POST['portable']) || isset($_POST['adress']) || isset($_POST['post']) || isset($_POST['ville'])
      || isset($_POST['pays']))
    {$sql="update clientcompte set mot_de_pass='$mot_de_pass',remot_de_pass='$remot_de_pass',cilivite='$cilivite',telephone='$telephone',
         portable='$portable',adress='$adress',post='$post',ville='$ville' where email='$email'"; 
     
    $result=mysql_query($sql)or die(mysql_error());

    if ($result){

    echo "<script language='javascript'>alert('modifer votre infos success!');history.back();</script>";
     }
    mysql_close($conn);
    }
    ?><script language="javascript">
        function modifierinfo(form){ 

    if((form.remot_de_passe.value)!=(form.mot_de_passe.value)){    
        alert("Votre mot de pass est different !");
        form.remot_de_passe.focus();
        return(false);
        }

    if(document.getElementById('mot_de_pass').value!=document.getElementById('remot_de_pass').value){    
        alert("Votre mot de pass est different !");
        form.remot_de_passe.focus();
        return(false);
        }
      
         
       return(true); 
       
        }
    </SCRIPT>
    <html>
        <title>clientcompte</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <body><form name="form" method="post" action="modifercompte.php" onSubmit="return modifierinfo()">
    <h1><p>Information de votre compte</p></h1>
    &nbsp;&nbsp;&nbsp;&nbsp;<p> Vous pouvez modifier votre informations.</p><table>
    <th width="120"></th>
    <tr><td>Votre nom : </td><td width="150"><?php echo $_SESSION['nom'];?></td></tr>
    <tr><td>Votre pr&eacute;nom : </td><td><?php echo $_SESSION['prenom'];?></td></tr>
    <tr><td>Votre email : </td><td><?php echo $_SESSION["email"];?></td></tr><tr><td>Mot de pass <font color = "red">*</font>: </td><td><input name='mot_de_pass ' id='mot_de_pass' type="password" size='25'></td></tr>
    <tr><td>Confirmez-la <font color = "red">*</font>: </td><td><input name='remot_de_pass' id='remot_de_pass' type="password" size='25'></td></tr>
    <tr><td>Civilit?:</td><td><input name='cilivite' type='radio' value='M.'>M.<br>
                               <input name='cilivite' type='radio' value='Mlle'> Mlle<br>
                               <input name='cilivite' type='radio' value='Mme'>Mme</td></tr>
    <tr><td>Telephone : </td><td><input name='telephone ' type='text' size='25'></td></tr>
    <tr><td>Portable  : </td><td><input name='portable' type='text' size='25'></td></tr>
    <tr><td>Adress : </td><td><input name='adress ' type='text' size='25'></td></tr>
    <tr><td>Code postal : </td><td><input name='post ' type='text' size='25'></td></tr>
    <tr><td>Ville : </td><td><input name='ville' type='text' size='25'></td></tr>
    <input name='submit' type='submit' value='Save infos'></td></tr>
    </table>
    </form></body>
    </html>这是全部的代码,email我想是从登陆页面读过来的,就用了session,这样不对吗?
      

  10.   

    我用了echo "<pre>\n";
    print_r($_POST);
    echo "</pre>";里面没有数据,为什么啊?