Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Alex Dias

PHP5 + MySQL 5.0

Recommended Posts

Caros amigos estou com muita dificuldade para inserir registros no MySQL 5.0 apartir do PHP5, quando eu insiro um registro apartir do phpMyAdmin 2.9.0.2 o registro entra no MySQL 5.0 perfeitamente.

 

Quando utilizo um formulário em php para inserir registro no MySQL 5.0, o mesmo não inseri o registro.

 

Este é o meu arquivo inserir.php que utilizo para pegar os dados do CAMPO TEXTO no Formulário PHP e enviar para a tabela 'tb_texto' no MySQL.

<?php//CONECTA COM O BANCO DE DADOSrequire_once("conecta.php");//SQL$sql = "INSERT INTO tb_texto (TEXTO) VALUES ('$texto')";//Inserindo os dados$sql = mysql_query($sql)or die ("Houve erro na gravação dos dados, por favor, clique em voltar e verifique os campos obrigatórios!");echo "Texto Cadastrado!";?>
Verifiquei que quando eu acesso a tabela "tb_texto" do MySQL apartir do phpMyAdmin aparece um novo registro, mas apenas o campo 'ID' e o campo 'TEXTO' aparece em branco, ou seja o texto preenchido no 'campo texto' do formulário php não está sendo enviado pra tabela.

 

 

Peço ajuda de todos para eu solucionar este problema.

 

Muito obrigado

 

Este é meu formulário de cadastro (index.php)

<html><head><title>CADASTRO DE TEXO</title><body bgcolor="#DDECCC"><form action="index.php5" method="post" name="frm_upload" id="frm_upload" metdod="post">  <table width="539" height="151" border="0" cellpadding="0" cellspacing="0" widtd="970">	<tr> 	  <td width="539" widtd="725"></td>	</tr>	<tr> 	  <td height="19" widtd="725"> 		<p CLASS="bar01"><strong>›› CADASTRANDO TEXTO </strong>		</td>	</tr>	<tr> 	  <td widtd="725"><p>TEXTO:</td>	</tr>	<tr> 	  <td widtd="725"> <p> 		  <textarea name="texto" cols="45" id="texto"></textarea>		</p></td>	</tr>	<tr> 	  <td height="43" widtd="725"> <br> 		<input type="submit" name="Submit" value="Cadastrar"> 	  </td>	</tr>  </table>  </form></body></html>
Este é a conexão ao database (conecta.php)

<?//DADOS PARA CONEXÃO$servidor   =   "localhost";   //SERVIDOR$bd		 =   "texto";	   //DATABASE$usuario	=   "root";		//USUÁRIO$senha	  =   "123456";			//SENHA//CONECTANDO$conn	=   @mysql_connect($servidor, $usuario, $senha) 			 or die("ERRO NA CONEXÃO");//SELECIONA O DATABASE A SER UTILIZADO$db	  =   @mysql_select_db($bd, $conn)			 or die("ERRO NA SELEÇÃO DO DATABASE");?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual o erro que aparece?

 

O campo 'TEXTO' está escrito em maisculo mesmo? Pode ser isso!

 

E está errado --> action="index.php5"

>>>Tudo bem, este erro 'action="index.php5"' aconteceu na hora de eu postar aqui, sei que o certo é action="inserir.php"

 

Ele dá a mensagem de sucesso "Texto Cadastrado" porém quando vou através do phpMyAdmin ver se o registro foi inserido na "tb_texto" o mesmo não se encontra. Apenas abriu um registro com o ID=1 mais o campo 'TEXTO' da tabela aparece em branco.

 

da uma $_POST['texto']; antes de inserir

>>> Funcionou perfeito agora, mas queria saber o porquê?

 

Anteriormante quando eu usava o ZendStudioServer-4.0.0-Windows-i386.exe + mysql-4.1.7-win este Script funcionava perfeito agora depois que instalei o mysql-5.0.26-win32 + php5 o mesmo não funciona.

 

Agora depois da sua dica tá perfeito, mas será que o php5 não interpreta os códigos em php4?

 

Muito obrigado amigo, valeu mesmo.

 

Só queria saber mesmo agora o porquê disso!!!

 

valeu.

 

Qual o erro que aparece?

 

O campo 'TEXTO' está escrito em maisculo mesmo? Pode ser isso!

 

E está errado --> actino="index.php5"

Anteriormante quando eu usava o ZendStudioServer-4.0.0-Windows-i386.exe + mysql-4.1.7-win este mesmo Script funcionava perfeito agora depois que instalei o mysql-5.0.26-win32 + php5 o mesmo não funciona.

 

O que será?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala AlexVocê tem que configurar seu PHP.Para corrigir isso você tem quer ir no seu PHP.INI e mudar REGISTER_GLOBALS para ON, provavelmente ele deve está OFF, fazendo isso você poderá resgatar todos os valores de variáveis INPUT entre outros pelo proprio nome, sem precisar fazer isso $_POST['texto'] e poderá colocar $texto direto.É isso ae... qualque coisa dá um toque

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala AlexVocê tem que configurar seu PHP.Para corrigir isso você tem quer ir no seu PHP.INI e mudar REGISTER_GLOBALS para ON, provavelmente ele deve está OFF, fazendo isso você poderá resgatar todos os valores de variáveis INPUT entre outros pelo proprio nome, sem precisar fazer isso $_POST['texto'] e poderá colocar $texto direto.É isso ae... qualque coisa dá um toque

Obrigadão amigo, era isso mesmo. Ateriormente eu tinha mudado para REGISTER_GLOBALS=ON e não funcionou!!!! Visto que eu inteligente D+ não tinha Reiniciado a Máquina....Depous que você me deu a bela dica eu refiz a operação reiniciando a máquina, aí eu corrí pro abraço... funcionou redondinho...Valeu Rogerius, Brigadão!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiramente, bem vindo ao IMasters

na proxima vez tente usar a caixa php

[php]suas paginas[/php]

a sintaxy pra insert eh essa

PHP
"INSERT INTO fornecedor(campo1, campo2, campo3) VALUES ('algo pro campo1', 'algo pro campo2', 'algo pro campo3')";

 

você especifico pra os valores serem inseridos em fornecedor mas nao disse em quais campos ;)

lembre-se de colocar os campos na mesma ordem dos valores

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Renan, sou eu de novo!!!

 

Fiz o que você me indicou mas não deu certo...tem alguma outra sugestão? Configuração no php.ini ou alguma outra forma de conexão???

 

Abaixo está como ficou meu código agora:

 

form fornecedor_r (recebe os dados para enviar pro bd)

 

<?php

//CONECTA COM O BANCO DE DADOS

 

$operacao = $_POST["operacao"];

require_once("conecta.php");

If ($operacao=="incluir")

{

$codigo = $_POST["cadfornecedor"];

$rzfornecedor = $_POST["rzfornecedor"];

$cnpjfor = $_POST["cnpjfornecedor"];

$ieforn = $_POST["iefornecedor"];

 

 

 

$sqlfornecedor = "Insert into fornecedor (cadfornecedor,rzfornecedor,cnpjfornecedor,iefornecedor)";

$sqlfornecedor . = "values ('$codigo','$rsfornecedor','$cnpjfor','$ieforn')";

 

$sqlfornecedor = mysql_query ($sqlfornecedor)or die ("Houve erro na gravação dos dados, por favor, clique em voltar e verifique os campos obrigatórios!");;

 

echo "Fornecedor incluido com sucesso!!!";

 

}

 

mysql_close($conexao);

?>

 

[php]

 

Na página fornecedor.php inclui estalinha:

<input type="hidden" name="operacao" value="incluir">

 

Abração e valeu pela ajuda

 

Blanche

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.