Array
(
)

Dúvida session em pdo

PHP
Hiago Orneles
   - 27 abr 2016

Como faço para montar uma session em pdo e igual ao mysqli, desse jeito?
#Código

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

William (devwilliam)
   - 27 abr 2016

Montar uma SESSION com PDO?

Hiago Orneles
   - 27 abr 2016

sim,pq?

William (devwilliam)
   - 27 abr 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

Hiago Orneles
   - 27 abr 2016

Sim isso eu sei mas estou com problemas para declaras lás pois estão dando erro aki

William (devwilliam)
   - 27 abr 2016


Citação:
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?

Hiago Orneles
   - 27 abr 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 />

William (devwilliam)
   - 27 abr 2016

Essa mensagem a grosso informa que determinada variável não existe!

Você está colocando "session_start()" antes trabalhar com SESSION?

Hiago Orneles
   - 27 abr 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>