Olá, galera, tudo bem? Então, eu ando tendo alguns problemas com a inserção de dados nas tabelas pelo PHP em forma de formulário (e mesmo sem o formulário)... Quando uso SELECT ele mostra os dados normalmente, mas não consigo inserir dados pelo site... Vou postar os códigos que estou usando: formulario.html <HTML>
<HEAD>
<TITLE>Formulário de Cadastro</TITLE>
</HEAD>
<BODY>
<center>
<form name = "frmCadastro" method="POST" action = "cadastrar.php">
Nome:<input type="text" size="20" name = "nome"><BR>
<input type="submit" value="Gravar">
</form>
<center>
</BODY>
</HTML>conecta.php <?php
$conectabd = pg_connect("dbname=postgres port=5432 host = hocalhost user = postgres password = ******");
if ($conectabd) {
//Caso queira Imprimir na Tela a mensagem, retirar o comentário
//echo "Conectado com: " . pg_host($conectabd) . "<br/> ";
}
else {
echo pg_last_error($conectabd);
exit;
}
?>executa.php <?php
function executa($Sql){
//Testando se existe o arquivo
if (file_exists("conecta.php")){
include("conecta.php");
}
if (!file_exists("conecta.php")){
$msgErro = "<center><font color='#FF0000'><b>";
$msgErro .= "Não foi possível conectar ao banco de Dados<br>";
$msgErro .= "Porque não existe o arquivo 'conecta.php'.";
$msgErro .= "</b></font></center>";
echo "<br><br>";
echo $msgErro;
exit;
}
$Resultado = pg_query($conectabd,$Sql);
pg_close($conectabd);
return $Resultado;
}
?>e por fim o cadastrar.php <?php
//Verifica se existe o arquivo executa.php para poder incluí-lo
if (file_exists("executa.php")){
include("executa.php");
echo "Executa.php existe e foi conectado. <br><br>";
}
if (!file_exists("executa.php")){
$msgErro = "<center><font color='#FF0000'><b>";
$msgErro .= "Não será possível executar nenhuma ação no Banco de Dados!<br>";
$msgErro .= "Porque não existe o arquivo 'executa.php'.";
$msgErro .= "</b></font></center>";
echo "<br><br>";
echo $msgErro;
echo "<br>";
exit;
}
$nome = pg_escape_string($_POST['nome']);
$query = "INSERT INTO teste(nome) VALUES('" . $nome . "')";
$result = pg_query($query);
if (!$result) {
$errormessage = pg_last_error();
echo "Erro com query: " . $errormessage;
exit();
}
printf ("Esse valor foi incluído na database - %s ", $nome);
pg_close();
?>Quando insiro pelo formulário, ele me direciona para o cadastrar.php e a página mostra: Executa.php existe e foi conectado. Erro com query: ... alguma solução? Já estou pirando... ---------- EDIT: Percebi que estava usando alguns códigos incompatíveis no cadastrar.php e mudei para como está agora.