Jump to content

Rodrigo2000

Members
  • Content count

    1
  • Joined

  • Last visited

Community Reputation

0 Comum

About Rodrigo2000

  1. Bom dia, Tenho estado a criar uma base dados onde vou inserir um conjunto de elementos de uma textarea. Quando o texto é curto, facilmente passa para a base de dados, no caso de ser longo não passa nada. O problema é claramente as variáveis, na base de dados já alterei o tamanho dos campos, mas resolveu o problema. Alguem tem uma ideia de como posso resolver o problema. Envio o código fonte da página de entrada de dados. Tenho igualmente um problema que ainda nem percebi o que se passa. O texto quando carregado na textarea e input aparece com espaços, como é que os posso eliminar. Sem mais Rodrigo Lourenço <!DOCTYPE HTML> <html> <head> <title>Adiciona Artigo</title> <meta name="description" content="website description" /> <meta name="keywords" content="website keywords, website keywords" /> <meta http-equiv="content-type" content="text/html; charset=windows-1252" /> <link rel="stylesheet" type="text/css" href="style/style.css" title="style" /> </head> <body> <?php //começa por verificar a sessão, caso não esteja activa envia para a página inicial. require("livraria.php"); session_start(); $validacao = array(); $login = 0; if (isset($_SESSION['login']) && isset($_SESSION["sessionmaxtime"])){ $login = $_SESSION['login']; } if ($login == 0) echo "<meta http-equiv=\"refresh\" content=\"0; url=index.php\">"; else{ if ($_SERVER["REQUEST_METHOD"] == "POST"){ $validacao = validarAdd(); } } ?> <div id="main"> <div id="header"> <div id="logo"> <div id="logo_text"> <!-- class="logo_colour", allows you to change the colour of the text --> <h1><a href="index.php">Livro<span class="logo_colour">Aberto</span></a></h1> <h2>Um lugar onde se lê e fala de livros.</h2> </div> </div> <div id="menubar"> <ul id="menu"> <!-- put class="selected" in the li tag for the selected page - to highlight which page you're on --> <li><a href="index.php">Home</a></li> <li class="selected"><a href="add.php">Criar</a></li> <li><a href="apagar.php">Apagar</a></li> <li><a href="alterar.php">Alterar</a></li> <li><a href="gerir.php">Utilizadores</a></li> <li><a href="sair.php">Sair</a></li> <?php echo "<li><a href=\"#\"> ".$_SESSION["utilizador"]."</a></li>"; ?> </ul> </div> </div> <div id="site_content"> <div class="sidebar"> <!-- insert your sidebar items here --> <h3>Livros em Revista</h3> <p>Use o formulário para inserir um novo artigo.</p> <p> Os campos abaixo mencionados são preenchidos automáticamente. <ul> <li> Autor </li> <li> Data </li> </ul> </p> <p></p> <h3>Sites Uteis</h3> <ul> <li><a href="#">link 1</a></li> <li><a href="#">link 2</a></li> <li><a href="#">link 3</a></li> <li><a href="#">link 4</a></li> </ul> </div> <div id="content"> <!-- insert the page content here --> <h1>Novo Registo</h1> <form action="#" method="post"> <div class="form_settings"> <p><span>Titulo <?php if ($_POST && in_array("titulo",$validacao)) echo "(Obrigatório)"; ?></span><input class="contact" type="text" name="titulo" value=" <?php if($_POST && (count($validacao) > 0)) if(!empty($_POST["titulo"])) echo $_POST["titulo"]; ?> " /></p> <p><span>Autor</span><input class="contact" type="text" name="autor" readonly="true" value=" <?php echo $_SESSION["utilizador"]; ?>" /></p> <p><span>Artigo <?php if ($_POST && in_array("artigo",$validacao)) echo "(Obrigatório)"; ?> </span><textarea class="contact textarea" rows="20" cols="50" name="artigo"> <?php //echo $_POST["artigo"]; if($_POST && (count($validacao) > 0)) if(!in_array("artigo",$validacao)) echo $_POST["artigo"]; ?> </textarea></textarea></p> <p><span>Resumo <?php if ($_POST && in_array("resumo",$validacao)) echo "(Obrigatório)"; ?> </span><textarea class="contact textarea" rows="4" cols="50" name="resumo"> <?php if($_POST && (count($validacao) > 0)) if(!in_array("resumo",$validacao) ) echo $_POST["resumo"]; ?> </textarea></textarea></p> <p><span>Data</span><input class="contact" type="date" name="data" readonly="true" value="<?php date_default_timezone_set('Europe/Lisbon'); echo date('Y-m-d'); ?>" /></p> <p style="padding-top: 15px"><span>&nbsp;</span><input class="submit" type="submit" name="contact_submitted" value="Adicionar" /></p> </div> </form> </div> </div> <div id="footer"> Copyright &copy; textured_blue | <a href="http://validator.w3.org/check?uri=referer">HTML5</a> | <a href="http://jigsaw.w3.org/css-validator/check/referer">CSS</a> | <a href="http://www.html5webtemplates.co.uk">Free CSS Templates</a> </div> </div> <?php //Uso da base de dados. $servername = "localhost"; $username = "root"; $password = ""; //campo a ser mudado consoante a password da base de dados. $dbname = "bdbooks"; // Create connection $con = new mysqli($servername, $username, $password, $dbname); //Verifica se houve erro ao aceder à base de dados if ($con->connect_errno!=0){ echo "Ocorreu um erro de ligação à base de dados.".$con->connect_errno; exit; } //Só quando não houverem elementos na $validação é que se pode avançar. if(($_POST) && (count($validacao) == 0)){ //Inserção dos dados na base de dados. //Usando antes o metodo query que usa a sintaxe mysql directamente. //Tratamento das variáveis para evitar problemas de injecção de SQL. $titulo = htmlentities(htmlspecialchars($_POST["titulo"]),ENT_QUOTES); $artigo = htmlentities(htmlspecialchars($_POST["artigo"]),ENT_QUOTES); $resumo = htmlentities(htmlspecialchars($_POST["resumo"]),ENT_QUOTES); //Os campos pré preenchidos $iduser = $_SESSION["userid"]; $data = $_POST["data"]; //Segundo construção da string para introdução dos dados SQL. $query = "INSERT INTO articles (artigo, data, id_users, resumo, titulo) VALUES("; //Introdução dos dados na string. $query = $query. "\"".$artigo."\","; $query = $query. "\"".$data."\","; $query = $query. "\"".$iduser."\","; $query = $query. "\"".$resumo."\","; $query = $query. "\"".$titulo."\");"; //realização da query $con->query($query); //Depois de utilizar os dados temos que os apagar. unset($_POST); } //Fim do if ?> </body> </html>
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.