Dúvida session em pdo
Como faço para montar uma session em pdo e igual ao mysqli, desse jeito?
$nome=$_POST['nome']; $email=$_POST['email']; $senha=$_POST['senha']; $tb = $conn->prepare("insert into usuario(nm_usuario, email_usuario, senha_usuario) values(:nome, :email, :senha)"); $tb->bindParam(":nome", $_POST["nome"], PDO::PARAM_STR); $tb->bindParam(":email", $_POST["email"], PDO::PARAM_STR); $tb->bindParam(":senha", $_POST["senha"], PDO::PARAM_STR); $tb->execute(); $tb = null;
Hiago Orneles
Curtidas 0
Respostas
William
27/04/2016
Montar uma SESSION com PDO?
GOSTEI 0
Hiago Orneles
27/04/2016
sim,pq?
GOSTEI 0
William
27/04/2016
Hiago, SESSION serve para você guardar informações por um determinado tempo na memória do servidor, não vejo relação com PDO ou com mysqli que são engines para acesso ao banco de dados.
http://php.net/manual/pt_BR/reserved.variables.session.php
http://php.net/manual/pt_BR/reserved.variables.session.php
GOSTEI 0
Hiago Orneles
27/04/2016
Sim isso eu sei mas estou com problemas para declaras lás pois estão dando erro aki
GOSTEI 0
William
27/04/2016
Sim isso eu sei mas estou com problemas para declaras lás pois estão dando erro aki
Hiago sou meu "lerdo" as vezes para entender algumas respostas ..rsrs
O que exatamente vc está com problema?
- Conexão com PDO?
- Executar instruções SQL?
- Capturar dados do Banco?
- Iniciar uma SESSION?
- Capturar dados de uma SESSION?
GOSTEI 0
Hiago Orneles
27/04/2016
Tou com um problema de pegar os dados do banco e e utiliza-lás numa session, esta dando esse erro:
<br /><b>Notice</b>: Undefined variable: l in <b>C:\EasyPHP-Devserver-16.1\eds-www\novo e\dados.php</b> on line <b>38</b><br />
<br /><b>Notice</b>: Undefined variable: l in <b>C:\EasyPHP-Devserver-16.1\eds-www\novo e\dados.php</b> on line <b>38</b><br />
GOSTEI 0
William
27/04/2016
Essa mensagem a grosso informa que determinada variável não existe!
Você está colocando "session_start()" antes trabalhar com SESSION?
Você está colocando "session_start()" antes trabalhar com SESSION?
GOSTEI 0
Hiago Orneles
27/04/2016
Sim eu coloquei session_start(); aki ta o codigo
<?php
session_start();
require("config.php");
if(!isset($_SESSION["usuario"])){
header("Location: login.php");
exit;
}
if(isset($_REQUEST["post_back"])){
if(empty($_POST["nome"]) || empty($_POST["email"]) || empty($_POST["senha"])){
echo "<script>alert('Preencha todos os campos antes de enviar seu cadastro!');</script>";
}else{
$tb = $conn->prepare("update usuario set nm_usuario=:nome, email_usuario=:email, senha_usuario=:senha where id_usuario=:id");
$tb->bindParam(":nome", $_POST["nome"], PDO::PARAM_STR);
$tb->bindParam(":email", $_POST["email"], PDO::PARAM_STR);
$tb->bindParam(":senha", $_POST["senha"], PDO::PARAM_STR);
$tb->bindParam(":id", $_SESSION["usuario"], PDO::PARAM_INT);
$tb->execute();
$tb = null;
echo "<script>alert('Dados alterados com sucesso!');</script>";
}
} //Pega os dados do usuário ativo $tb = $conn->prepare("select * from usuario where id_usuario = :id"); $tb->bindParam(":id",$_SESSION["usuario"], PDO::PARAM_INT); $tb->execute(); $l = $tb->fetch(PDO::FETCH_ASSOC);
?>
<form id="form1" name="form1" method="post" action="dados.php">
<p>Nome: <input name="nome" type="text" id="nome" value="<?php echo $l["nm_usuario"]?>" /></p>
<p>Email: <input name="email" type="text" id="email" value="<?php echo $l["email_usuario"]?>" /></p>
<p>Senha: <input type="text" name="senha" value="<?php echo $l["senha_usuario"]?>" /></p>
<input type="submit" name="post_back" id="button" value="Atualizar Dados" />
</form>
<?php
session_start();
require("config.php");
if(!isset($_SESSION["usuario"])){
header("Location: login.php");
exit;
}
if(isset($_REQUEST["post_back"])){
if(empty($_POST["nome"]) || empty($_POST["email"]) || empty($_POST["senha"])){
echo "<script>alert('Preencha todos os campos antes de enviar seu cadastro!');</script>";
}else{
$tb = $conn->prepare("update usuario set nm_usuario=:nome, email_usuario=:email, senha_usuario=:senha where id_usuario=:id");
$tb->bindParam(":nome", $_POST["nome"], PDO::PARAM_STR);
$tb->bindParam(":email", $_POST["email"], PDO::PARAM_STR);
$tb->bindParam(":senha", $_POST["senha"], PDO::PARAM_STR);
$tb->bindParam(":id", $_SESSION["usuario"], PDO::PARAM_INT);
$tb->execute();
$tb = null;
echo "<script>alert('Dados alterados com sucesso!');</script>";
}
} //Pega os dados do usuário ativo $tb = $conn->prepare("select * from usuario where id_usuario = :id"); $tb->bindParam(":id",$_SESSION["usuario"], PDO::PARAM_INT); $tb->execute(); $l = $tb->fetch(PDO::FETCH_ASSOC);
?>
<form id="form1" name="form1" method="post" action="dados.php">
<p>Nome: <input name="nome" type="text" id="nome" value="<?php echo $l["nm_usuario"]?>" /></p>
<p>Email: <input name="email" type="text" id="email" value="<?php echo $l["email_usuario"]?>" /></p>
<p>Senha: <input type="text" name="senha" value="<?php echo $l["senha_usuario"]?>" /></p>
<input type="submit" name="post_back" id="button" value="Atualizar Dados" />
</form>
GOSTEI 0