簡體   English   中英

使用php / mysql更新數據庫時出現問題

[英]Issue in updating the database, using php/mysql

我在更新數據庫時遇到了這個問題,所以,所有的工作都有效,我的意思是我擁有表格,它可以打印值,但是當我嘗試更新它時,除了用戶名和密碼之外,所有內容都會更新。

這是我使用的代碼。

謝謝!

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>

在您的代碼上,您有:

$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行

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM