使用php/mysql更新数据库时出现的问题

使用php/mysql更新数据库时出现的问题,php,mysql,Php,Mysql,我在更新数据库时遇到了这个问题,所以,一切都正常,我的意思是我有表单,它会打印值,但当我尝试更新它时,除了用户名和密码之外,所有内容都会更新 这是我使用的代码 谢谢 if ($Act=='Save') { mysql_query("BEGIN"); $sql = "Insert into tbl_galleries (gal_title,gal_image,username,password) Values (";

我在更新数据库时遇到了这个问题,所以,一切都正常,我的意思是我有表单,它会打印值,但当我尝试更新它时,除了用户名和密码之外,所有内容都会更新

这是我使用的代码

谢谢

if ($Act=='Save') {     
        mysql_query("BEGIN");       
        $sql = "Insert into tbl_galleries (gal_title,gal_image,username,password) Values (";                    
        $sql.= "'". strip_tags(mysql_real_escape_string(trim($gal_title))). "','". strip_tags(mysql_real_escape_string(trim($gal_image))) ."','". strip_tags(mysql_real_escape_string(trim($username))). "',,'". strip_tags(mysql_real_escape_string(trim($password))). "',);";         
        $query = mysql_query($sql);
        if(!$query){
            mysql_query("ROLLBACK");
            $myErrorsUpGr = mysql_error();
            echo $myErrorsUpGr;
        } else {
            mysql_query("COMMIT");
            echo 'Insertion was successfull.';
        }

    } else if ($Act=='Update'){         

        mysql_query("BEGIN");

        $sql = " Update tbl_galleries set ";
        $sql.= " gal_title='" . strip_tags(mysql_real_escape_string(trim($gal_title))) . "',";
        $sql.= " gal_image='" . strip_tags(mysql_real_escape_string(trim($gal_image))) . "'";
        $sql.= " where gal_id=" . $gal_id . ";";
        $sql.= " username='" . strip_tags(mysql_real_escape_string(trim($username))) . "',";
            $sql.= " password='" . strip_tags(mysql_real_escape_string(trim($password))) . "',";
<?php
    include_once("db/envato_db.php");
    if ($_SERVER['QUERY_STRING']!='')
    {  
        $sql = "";        
        $sql = "SELECT gal_id,gal_title,gal_image,username,password FROM tbl_galleries where gal_id='" . $_REQUEST['gid'] ."';";
        $query = mysql_query($sql) or $myErrorsP = mysql_error();
        if(isset($myErrors) && $myErrorsP!='')
        {     

        } 
        else 
        {          
            $row = mysql_fetch_row($query);
            mysql_free_result($query);
            $gal_id    = $row[0];
            $gal_title = $row[1];
            $gal_image = $row[2];     
            $username  = $row[3];
            $password  = $row[4];                 
        } 
    }
?>
    <tr>
        <td width="104">Gallery Title:</td>
        <td width="556"><input type="text" id="gtitle" name="gtitle" class="typeText" maxlength="50" value="<?php echo isset($gal_title)? $gal_title : ""?>" tabindex="1" /></td>    
    </tr>
    <tr>
        <td>Gallery Image:</td>
        <td>
        <input type="text" id="gimg" name="gimg" class="typeText" maxlength="100" value="<?php echo isset($gal_image)? $gal_image : ""?>" readonly/>
        <input type="file" name="gimg_upl" id="gimg_upl"/>&nbsp;
        <a href="javascript:;" onClick="ajaxFileUpload('gimg_upl','img_files');" title="Click to Upload Image" name="Click to Upload Image">Upload</a>          
        </td>    
    </tr>
    <tr>
        <td width="104">Username:</td>
        <td width="556"><input type="text" id="gusername" name="gusername" class="typeText" maxlength="50" value="<?php echo isset($username)? $username : ""?>" tabindex="1" /></td>    
    </tr> 
    <tr>
        <td width="104">Password:</td>
        <td width="556"><input type="text" id="gpassword" name="gpassword" class="typeText" maxlength="50" value="<?php echo isset($password)? $password : ""?>" tabindex="1" /></td>    
    </tr>       
    </table> 

    <table id="savetbl" style="width:680px;" cellpadding="3">
    <tr>
        <td align="center" colspan="2">
    <?php 
        if(isset($gal_id) && $gal_id!='')
        {                
            if(!isset($myErrorsP)) 
            { 
                ?>
                <input type="button" value="&raquo; Update &laquo;" class="but" name="button" alt="Update" title="Update" onClick="Do_Update('Update', '<?php echo $gal_id?>');" tabindex="3">                                         
                <?php 
            } 
        } 
        else 
        { 
            if(!isset($myErrorsP)) 
            { 
                ?>
                <input type="button" value="&raquo; Save &laquo;" class="but" name="button" alt="Save" title="Save" onClick="Do_Update('Save','0');" tabindex="3">                  
                <?php 
            } 
        } 
        ?>               
        </td>    
    </tr>
if($Act=='Save'){
mysql_查询(“开始”);
$sql=“插入tbl_图库(gal_标题、gal_图像、用户名、密码)值(”;
$sql.=“'.”strip_标签(mysql_real_escape_字符串(trim($gal_title))).“,”.strip_标签(mysql_real_escape_字符串(trim($gal_image))).“,”.strip_标签(mysql_real_escape_字符串(trim($username)).“,”.“,”.strip_标签(mysql_real_escape_字符串(trim($password)).)).“,”).“,”);“,”;
$query=mysql\u查询($sql);
如果(!$query){
mysql_查询(“回滚”);
$myErrorsUpGr=mysql_error();
echo$myErrorsUpGr;
}否则{
mysql_查询(“提交”);
echo“插入成功”;
}
}如果($Act=='Update'){
mysql_查询(“开始”);
$sql=“更新tbl\U库集”;
$sql.=“gal_title=”。strip_标记(mysql_real_escape_字符串(trim($gal_title)))。“,”;
$sql.=“gal_image=”。strip_标记(mysql_real_escape_字符串(trim($gal_image)))。“”;
$sql.=“where gal_id=”.$gal_id.;”;
$sql.=“username=”.strip_标记(mysql_real_escape_字符串(trim($username))。“,”;
$sql.=“password=”.strip_标记(mysql_real_escape_字符串(trim($password)))。“,”;

在您的代码上有以下内容:

$sql.= " where gal_id=" . $gal_id . ";";
$sql.= " username='" . strip_tags(mysql_real_escape_string(trim($username))) . "',";
$sql.= " password='" . strip_tags(mysql_real_escape_string(trim($password))) . "',";
在更新用户名和密码后尝试设置where子句:

$sql.= " username='" . strip_tags(mysql_real_escape_string(trim($username))) . "',";
$sql.= " password='" . strip_tags(mysql_real_escape_string(trim($password))) . "'";
$sql.= " where gal_id=" . $gal_id . ";";
试试这个

$sql.= " where gal_id=" . $gal_id . ";";
$sql.= "AND username='" . strip_tags(mysql_real_escape_string(trim($username))) . "',";
$sql.= "AND password='" . strip_tags(mysql_real_escape_string(trim($password))) . "',";

示例代码的第22行、第23行和第24行

欢迎使用堆栈溢出。请不要使用
mysql*
函数,它们不再被维护,社区已经开始运行。相反,您应该了解并使用or。如果您不能决定,将帮助选择。如果您想学习,这部分不应该做吗?在哪里
update
是否在此代码中?您需要编写sql更新查询来实际更新数据。您的更新查询在哪里?@Al12 Do_update是一个javascript函数。恐怕您对基础知识不太清楚。开始学习基本sql嘿,谢谢……除此之外,我在插入方面有问题!不仅仅是更新。@Al12 Do_update是一个javascript函数de在$username和$password值之间有一个双逗号(即,,)。我认为这可能是您的问题。另外,请删除INSERT语句中最后一个结束括号之前的逗号。