GabiGui Postado Abril 24, 2016 Denunciar Share Postado Abril 24, 2016 Olá pessoal, meu sistema de postagens está dando o erro Call to a member function prepare() on null na linha 54. Alguém sabe como resolver? Segue abaixo o código. <!DOCTYPE> <?php include_once '_php/BD.class.php'; global $conn; ?> <html> <head> <title>Postagens</title> </head> <body> <?php ini_set('display_errors', true); error_reporting(E_ALL); ?> <form name="entrar" method="post" action="#"> <label> <textarea type="text"name="texto" cols="22" rows="6" id="textoPostagem"></textarea> </label> <br/> <input type="submit" name="postar" value="Postar"> <br/> </form> <form method="post" action="_php/recebe_upload.php" enctype="multipart/form-data"> <label>Arquivo</label> <input type="file" name="arquivo" /> <input type="submit" value="Enviar" /> </form> <?php ?> <?php if(isset($_POST['postar']) && empty($_POST['textoPostagem'])){ $post = $_POST['texto']; $data = date("Y/m/d"); if (strlen($_POST['texto'])) { //$sql = "INSERT INTO mydb (postagens) VALUES('$post')"; $sql = $conn->prepare("insert into mydb (postagens) values ('$post')"); $sql->bind_param(1, $post); $sql->execute() or exit(print_r($sql->errorInfo(), true));; $stmt2 = $conn->prepare("select postagens from postagens"); $stmt2->execute(); while ($stmt2->fetch(PDO::FETCH_OBJ)) { /* ($exibir = mysqli_fetch_array($executar)) echo $exibir['texto']; echo " "; */ $nome=$reg->nome; echo $nome; echo $reg->texto; echo $date; } } } else { echo "Digite um texto"; } </body> </html> Código da conexão com BD <?php class BD{ private static $conn; static function getConn(){ if (is_null (self::$conn)) { self::$conn = new PDO('mysql:host=localhost;dbname=mydb','root',''); } return self::$conn; } } ?> Agradeço desde já a ajuda. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Abril 24, 2016 Denunciar Share Postado Abril 24, 2016 $conn é um atributo da classe BD, não uma variável global. Leia sobre Escopo de Variáveis, e entenderá melhor Veja este tutorial sobre PDO Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
GabiGui
Olá pessoal, meu sistema de postagens está dando o erro Call to a member function prepare() on null na linha 54. Alguém sabe como resolver?
Segue abaixo o código.
Código da conexão com BD
Agradeço desde já a ajuda.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.