表值没有变化

时间:2016-07-05 11:26:29

标签: php mysql json

我的代码是EDIT.php DB_Functions,而g.php ..我不知道哪里有人可以帮助我找出我的代码上的错误

每件事情都很简单,但表中的变化并没有反映出来......我的SQL查询在XAMP服务器上运行正常。   这可能是一个愚蠢的错误,但无法找到它..      的 edit.php

<?php 
//error_reporting(0);
include("class_db.php"); 
include_once('DB_Functions.php');

            if (isset ($_GET['edit_id']))
         {
            $id=$_GET['edit_id'];
         {
            if(isset($_POST['nam']))
         {
            $id =($_POST['edit_id']);           
            $name=($_POST['name']);
            $lastname=($_POST['lastname']);
            $email=($_POST['email']);
            $duser=($_POST['duser']);
            $pass=($_POST['pass']);             
            $mob=($_POST['mob']);
            $website=($_POST['website']);


$result =  file_get_contents('http://localhost/rajju/demo/webservises/webservises/webservices/g.php?action=update_details&id='.$id.'&name='.$name.'&lastname='.$lastname.'&email='.$email.'&duser='.$duser.'&pass='.$pass.'&mob='.$mob.'&website='.$website);

$result = json_decode($result, true);

             if($result == 'success'){

             header("location:http://localhost/rajju/demo/webservises/webservises/webservices/list.php");
            }
            else{
                print_r($result);
            } 

         }

         }
         }
$select =mysql_query("select * from users where id=$id");
$var = mysql_fetch_object($select);


?>  

DB_Functions.php

public function  updateUser($id,$name,$lastname,$email,$duser,$pass,$mob,$website) 

{ 
$app_list =mysql_query("UPDATE users SET name='".$name."',lastname='".$lastname."',email='".$email."',duser='".$duser."',pass='".$pass."',mob='".$mob."',website='".$website."' WHERE id='".$id."'");

    if ($app_list) {
        return true;
    } else {
        return false;
    } 
}

g.php

else if($tag == 'update_details')
{
 $db = new DB_Functions();      
 //$id = ($_GET['id']);
 $name=($_GET['name']);     
 $lastname=($_GET['lastname']); 
 $email=($_GET['email']);   
 $duser=($_GET['duser']);   
 $pass=($_GET['pass']);
 $mob=($_GET['mob']);   
 $website=($_GET['website']);   

    //exit (json_encode($name));

    if ($db ->updateUser($name,$lastname,$email,$duser,$pass,$mob,$website)) 
    {
            exit (json_encode('success'));

    }else
    {
            exit (json_encode('errorzz'));

    } 

}

1 个答案:

答案 0 :(得分:1)

以下内容应该有效。请注意,这仍然不能完全保护您免受xss和其他攻击。然而它比使用mysql_query要好得多!!此外,您应该清理并检查传入的$_GET参数和Salt + Hash您的密码。

<?php 
    $conn   = new PDO( DB_DSN, DB_USERNAME, DB_PASSWORD );
    $sql    = "UPDATE users SET name=:name, lastname=:lastname, email=:email, duser=:duser, pass=:pass, mob=:mob, website=:website, WHERE id=:id";;
    $st     = $conn->prepare( $sql );
    $st->bindValue(":name", $name, PDO::PARAM_STR);
    $st->bindValue(":lastname", $lastname, PDO::PARAM_STR);
    $st->bindValue(":email", $email, PDO::PARAM_STR);
    $st->bindValue(":duser", $duser, PDO::PARAM_STR);
    $st->bindValue(":pass", $pass, PDO::PARAM_STR);
    $st->bindValue(":mob", $mob, PDO::PARAM_STR);
    $st->bindValue(":website", $website, PDO::PARAM_STR);
    $st->bindValue(":id", $id, PDO::PARAM_INT);
    $st->execute();
?>