0

我有两个表,我需要在与 users 表的用户相对应的表中显示文本。

所以我这样做了:

$email = $_SESSION['email'];
$select = mysql_query("SELECT t.id, t.id_textos, t.userTitleSite, t.userTextSobre, t.userTextContatos, t.userTextMaisInfos FROM vms_textos t INNER JOIN vms_users u ON (t.id = u.id) LIMIT 1") or print (mysql_error());
while($res_select = mysql_fetch_array($select)){

    $userTitleSite = $res_select["userTitleSite"];
    $userTextSobre = $res_select["userTextSobre"];
    $userTextContatos = $res_select["userTextContatos"];
    $userTextMaisInfos = $res_select["userTextMaisInfos"];
    $id = $res_select["id"];

和工作。
现在我需要直接从 INPUTS 更新此信息.. 但我不能这样做,因为我的字段 UPDATE 一定是错误的,因为它总是在提交后重置所有内容。
这是我正在使用的代码。
请看看有什么问题:

$query=mysql_query("UPDATE vms_textos SET userTitleSite='$userTitleSite', userTextSobre='$userTextSobre', userTextContatos='$userTextContatos', userTextMaisInfos='$userTextMaisInfos' WHERE t.id=u.id");

谢谢!

[编辑]

所有重要的代码:

// INCLUDES.PHP

// Starts
ob_start();
session_start();

// Globais
$startaction="";


// Ação
        if(isset($_GET["acao"])){
                $acao=$_GET["acao"];
                $startaction=1;
        }


// Conexão com o banco de dados
$conectar=new DB;
$conectar=$conectar->conectar();



// Metodos de Cadastro
if($startaction == 1){
        if($acao == "cadastrar"){
                $usuario=$_POST["usuario"];
                $nome=$_POST["nome"];
                $sobrenome=$_POST["sobrenome"];
                $telefone=$_POST["telefone"];
                $email=$_POST["email"];
                $senha=$_POST["senha"];

                if(empty($usuario) || empty($nome) || empty($sobrenome) || empty($telefone) || empty($email) || empty($senha)){
                        $msg="Preencha todos os campos!";
                }
                // Todos os campos preenchidos
                else {
                        // Email válido
                        if(filter_var($email,FILTER_VALIDATE_EMAIL)){
                                // Senha inválida
                                if(strlen($senha) < 8){
                                        $msg="As senhas devem conter no mínimo oito caracteres!";
                                }
                                // Senha válida
                                else {
                                        // Executa a classe de cadastro
                                        $conectar=new Cadastro;
                                        echo "<div class=\"flash\">";
                                        $conectar=$conectar->cadastrar($usuario, $nome, $sobrenome, $telefone, $email, $senha);
                                        echo "</div>";
                                }

                        }
                        // Email invalido
                        else{
                                $msg="Digite seu e-mail corretamente!";

                        }

                }


        }
}



// Método de Login
if($startaction == 1){
        if($acao == "logar"){
                // Dados
                $email=addslashes($_POST["email"]);
                $senha=addslashes(sha1($_POST["senha"].""));

                if(empty($email) || empty($senha)){
                        $msg="Preencha todos os campos!";
                } else{
                        if(!filter_var($email,FILTER_VALIDATE_EMAIL)){
                                $msg="Digite seu e-mail corretamente!";
                        } else {
                                // Executa a busca pelo usuário
                                $login=new Login;
                                echo "<div class=\"flash\">";
                                $login=$login->logar($email, $senha);
                                echo "</div>";
                        }
                }
        }
}



// Método de Checar usuário
if(isset($_SESSION["email"]) && isset($_SESSION["senha"])){
        $logado=1;
        $nivel=$_SESSION["nivel"];
}









// LOGIN.PHP -- CLASSE DE LOGIN
class Login {
                public function logar($email, $senha){
                        $buscar=mysql_query("SELECT * FROM vms_users WHERE email='$email' AND senha='$senha' LIMIT 1");
                        if(mysql_num_rows($buscar) == 1){
                                $dados=mysql_fetch_array($buscar);
                                if($dados["status"] == 1){
                                        $_SESSION["email"]=$dados["email"];
                                        $_SESSION["senha"]=$dados["senha"];
                                        $_SESSION["nivel"]=$dados["nivel"];
                                        setcookie("logado",1);
                                        $log=1;
                                } else{
                                        $flash="Usuário bloqueado! Entre em contato conosco!";
                                }
                        }
                        if(isset($log)){
                                $flash="Você foi logado com sucesso!";
                        } else{

                                if(empty($flash)){
                                        $flash="Ops, digite seu e-mail e sua senha corretamente!";
                                }
                        }

                        echo $flash;
                }
        }






// CADASTRO.PHP  -- CLASSE DE CADASTRO
 class Cadastro{
        public function cadastrar($usuario, $nome, $sobrenome, $telefone, $email, $senha){
                // Tratamento das variaveis
                $usuario=ucwords(strtolower($usuario));
                $nome=ucwords(strtolower($nome));
                $sobrenome=ucwords(strtolower($sobrenome));
                $telefone=ucwords(strtolower($telefone));
                $email=ucwords(strtolower($email));
                $senha=sha1($senha."");

                // Inserção no banco de dados
                $validaremail=mysql_query("SELECT * FROM vms_users WHERE email='$email' OR usuario='$usuario'");
                $contar=mysql_num_rows($validaremail);
                if($contar == 0){
                        $insert=mysql_query("INSERT INTO vms_users(usuario, nome, sobrenome, telefone, email, senha, nivel, status) VALUES('$usuario','$nome','$sobrenome','$telefone','$email','$senha','1','0')");
                } else{
                        $flash="Desculpe, mas já existe um usuário cadastrado com este e-mail em nosso sistema!";
                }

                if(isset($insert)){
                        // Cadatro ok
                        $flash="Cadastro realizado com sucesso, aguarde nossa aprovação!";

                } else{
                        if(empty($flash)){
                                $flash="Ops, houve um erro em nosso sistema!";
                        }
                }

                // Retorno para o usuário
                echo $flash;
        }
 }
4

2 回答 2

0
$query=mysql_query("UPDATE vms_textos SET userTitleSite='$userTitleSite' WHERE t.id=u.id");

你想在数据库中更新什么字段?在 mysql_query() 中设置该特定字段。我在这里提到..如果你设置所有字段然后所有字段都会更新。

于 2013-10-07T06:22:41.733 回答
0
$query=mysql_query("UPDATE vms_textos SET t.userTitleSite='$userTitleSite' WHERE t.id='u.id'");
于 2013-10-07T07:41:10.660 回答