Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Formulário não envia informação para o banco


Kelly Cristina Viana

Pergunta

Boa noite, pessoal!

Sou nova estudante de PHP, eu utilizo o mysql Workbench e criei três tabelas e estou tentando fazer um sistema de cadastro de usuário.
Criei no PHP o formulário e fiz um insert de cada tabela usuario, telefone e endereço.

Obs: meu ID é o usu_cpf_cnpj, onde é o usuário que irá informar o número. Como utilizo três tabelas eu tenho que pegar esse usu_cpf_cnpj para identificar em cada tabela criada qual usuário esta passando a informação.

Fiz os inserts das três tabelas e no meio de uma delas utilizei um select para me informar qual foi o usu_cpf_cnpj digitado e fui ver no banco e deu certo apenas as tabelas usuario e telefone, mas a tabela endereço continua em branco...

Creio que eu tenha que criar a variavel global usu_cpf_cnpj para que eu possa utilizar em todas as tabelas, mas não sei como fazer isso.

tabela usuario

usu_cpf_cnpj
usu_nome
usu_sexo
usu_dta_nasc
usu_email
usu_senha
usu_nivel_acesso
usu_status

Tabela Telefone
tel_usuario (id usu_cpf_cnpj)
tel_numero
tel_celular
tel_tipo

Tabela endereço
end_usuario (id usu_cpf_cnpj)
end_cep
end_logradouro
end_numero
end_complemento
end_bairro
end_cidade
end_estado

frmCadastro.php

<?php
include ('pagHeader.php');
?>
<section class="w700">
<form name="frmCadastro" method="post" action="usuInput.php"> <!nome da pasta e do método que pegará do banco-->
<fieldset>
<label>Cadastre-se</label> <BR><BR>
<label>*Dados Obrigat&oacute;rios</label><BR><BR>
<label>Nome:*</label>
<input type="text" name="usu_nome" id="nome" size="40" required="required"/><BR><BR>
<label>Sexo:*</label>
<input type="radio" name="usu_sexo" id="sexo" value="M" required="required">Masculino
<input type="radio" name="usu_sexo" id="sexo" value="F" required="required">Feminino<BR><BR>
<label>CPF ou CNPJ:*</label>
<input type="text" name="usu_cpf_cnpj" id="cpfecnpj" size="10" required="required"/><BR><BR>
<label>Data de Nascimento:*</label>
<input type="text" name="usu_dta_nasc" id="nascimento" size="10" required="required"/><BR><BR>
<label>E-mail:*</label>
<input type="text" name="usu_email" id="email" size="40" required="required"/><BR><BR>
<label>Criar Senha:*</label>
<input type="password" name="usu_senha" id="nome" size="3" required="required"/>
<h3>Use entre 6 a 10 caracteres.</h3><BR>
<label>Repetir Senha:*</label>
<input type="password" name="usu_senha" id="nome" size="3" required="required"/><BR><BR>
<label>Tipo de telefone:*</label>
<select name="tel_tipo" id="tel_tipo">
<option selected>Residencial</option>
<option selected>Comercial</option>
<option selected>Outros</option>
</select>
<label>Telefone:*</label>
<input type="text" name="tel_numero" id="tel_numero" size="10" required="required"/><BR><BR>
<label>Celular:</label>
<input type="text" name="tel_celular" id="tel_celular" size="10"/><BR><BR>
<label>Endere&ccedil;o:*</label><BR><BR>
<label>CEP:*</label>
<input type="text" name="end_cep" id="cep" size="10" required="required"/><BR><BR>
<label>Logradouro:*</label>
<input type="text" name="end_logradouro" id="logradouro" size="40" required="required"/><BR><BR>
<label>N&uacute;mero:*</label>
<input type="text" name="end_numero" id="numero" size="10" required="required"/><BR><BR>
<label>Complemento:</label>
<input type="text" name="end_complemento" id="complemento" size="10"/><BR><BR>
<label>Bairro:*</label>
<input type="text" name="end_bairro" id="bairro" size="10" required="required"/><BR><BR>
<label>Cidade:*</label>
<input type="text" name="end_cidade" id="cidade" size="10" required="required"/><BR><BR>
<label>Estado:</label>
<select name=end_estado id="estado">
<option selected>--Selecione Estado--</option>
<option>Acre(AC)</option>
<option>Alagoas(AL)</option>
<option>Amapá(AP)</option>
<option>Amazonas(AM)(</option>
<option>Bahia(BA)</option>
<option>Ceará(CE)</option>
<option>Distrito Federal(DF)</option>
<option>Espírito Santo(ES)</option>
<option>Goiás(GO)</option>
<option>Maranhão(MA)</option>
<option>Mato Grosso(MT)</option>
<option>Mato Grosso do Sul(MS)</option>
<option>Minas Gerais(MG)</option>
<option>Pará(PA)</option>
<option>Paraíba(PB)</option>
<option>Paraná(PR)</option>
<option>Pernambuco(PE)</option>
<option>Piauí(PI)</option>
<option>Rio de Janeiro(RJ)</option>
<option>Rio Grande do Norte(RN)</option>
<option>Rio Grande do Sul(RS)</option>
<option>Rondônia(RO)</option>
<option>Roraima(RR)</option>
<option>Santa Catarina(SC)</option>
<option>São Paulo(SP)</option>
<option>Tocantins(TO)</option>
</select><BR><BR>
<h4>Ao cadastra-me, declaro que sou maior de idade e aceito as condições citadas abaixo:</h4><BR><BR>
<input type="checkbox" name="polprivacidade" required="required" value="privacidade"><A href="polPrivacidade.php"> Política de privacidade</A>
<input type="checkbox" name="termoscondicoesBL" required="required" value="termoUso"><A href="termoUso.php"> Termos e condições da Biblioteca Livre</A><BR><BR>
<input type="submit" name="usrSubmit" value="Cadastrar-me">
<input type="reset" value="Limpar"> <BR><BR>
</fieldset>
</form>
</section>
<?php
include ('pagFooter.php');

?>

usuInput.php

<?php
session_start();
include ('functions.php');
session_checker();
include('config.php');


if (!$_POST['usrSubmit']){
header('Location: frmCadastro.php');
} else {

$usu_cpf_cnpj = $_POST['usu_cpf_cnpj];
$usu_nome = $_POST['usu_nome'];
$usu_---o = $_POST['usu_---o];
$usu_dta_nasc = $_POST['usu_dta_nasc'];
$usu_email = $_POST['usu_email];
$usu_senha = $_POST['usu_senha'];
$usu_nivel_acesso = $_POST['usu_nivel_acesso];
$usu_status = $_POST['usu_status'];
$tel_numero = $_POST['tel_numero];
$tel_celular = $_POST['tel_celular'];
$tel_tipo = $_POST['tel_tipo];
$end_cep = $_POST['end_cep'];
$end_logradouro = $_POST['end_logradouro];
$end_numero = $_POST['end_numero'];
$end_complemento = $_POST['end_complemento];
$end_bairro = $_POST['end_bairro'];
$end_cidade = $_POST['end_cidade];
$end_estado = $_POST['end_estado'];



mysql_query ("
INSERT INTO usuario (usu_cpf_cnpj, usu_nome, usu_---o, usu_dta_nasc, usu_email, usu_senha, usu_nivel_acesso, usu_status)
VALUES ('".$usu_cpf_cnpj."','".$usu_nome."','".$usu_---o."','".$usu_dta_nasc."','".$usu_email."','".$usu_senha."','1','1')
");

$i11=mysql_query("SELECT usu_cpf_cnpj FROM usuario "
. "WHERE usu_email='".$usu_email."'");
$usu_cpf_cnpj = mysql_result($i11,0,"usu_cpf_cnpj");

mysql_query ("
INSERT INTO telefone (tel_usuario, tel_tipo, tel_numero, tel_celular)
VALUES ('".$usu_cpf_cnpj."','".$tel_tipo."','".$tel_numero."','".$tel_celular."')
");


mysql_query ("
INSERT INTO endereco (end_usuario, end_tipo, end_cep, end_logradouro, end_numero, end_complemento, end_bairro, end_cidade, end_estado)
VALUES ('".$usu_cpf_cnpj."','".$end_tipo."','".$end_cep."','".$end_logradouro."','".$end_numero."','".$end_complemento."','".$end_bairro."','".$end_cidade."','".$end_estado."')
");

header('Location: pagIndexLog.php');


}
?>

Editado por Kelly Cristina Viana
Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

pelo que entendi

na tabela telefone o tel_usuario é o ID da tabela usuario

e na de endereco o usu_cpf é o ID da tabela usuario

se sim, imagino que seja um int e que a tabela usuario seja um auto increment

mude um pouquinho o codigo:

coloque o select como comentario, para caso de não der certo voce não perde o codigo

/*

$i11=mysql_query("SELECT usu_cpf_cnpj FROM usuario "
. "WHERE usu_email='".$usu_email."'");
$usu_cpf_cnpj = mysql_result($i11,0,"usu_cpf_cnpj");

*/

//use o mysql_insert_id() que pega o ultimo id gerado no insert anterior (somente para casos de auto incremente como falei acima)

$UltimoId = mysql_insert_id();

//mude a variavel de cadastro, voce esta usando a mesma enviada pelo form

mysql_query ("
INSERT INTO telefone (tel_usuario, tel_tipo, tel_numero, tel_celular)
VALUES ('".$UltimoId."','".$tel_tipo."','".$tel_numero."','".$tel_celular."')
");

mysql_query ("
INSERT INTO endereco (end_usuario, end_tipo, end_cep, end_logradouro, end_numero, end_complemento, end_bairro, end_cidade, end_estado)
VALUES ('".$UltimoId."','".$end_tipo."','".$end_cep."','".$end_logradouro."','".$end_numero."','".$end_complemento."','".$end_bairro."','".$end_cidade."','".$end_estado."')

");

//Isto deve resolver e cadastrar o id correto nas tabelas

Link para o comentário
Compartilhar em outros sites

  • 0

então apenas remova o select.. já tem o conteudo do $usu_cpf_cnpj no post não precisa pesquisar o usuario, voce poderia colocar o select antes do insert do usuario para ver se já existe cadastro para ele e não depois

a variavel vem do post e se for da forma que colocou acima direto os insert´s não vai se perder o valor da variavel

Link para o comentário
Compartilhar em outros sites

  • 0

Bom dia!

Então eu já havia tirado o select, acontece é que a tabela usuario e telefone esta incluindo as informações digitadas, porém a tabela endereço não tem informação nenhuma, por este motivo utilizei o select para pegar o cpf digitado e poder incluir na tabela endereço, mas também não esta funcionando.

Link para o comentário
Compartilhar em outros sites

  • 0

muito estranho.. se no usuario esta funcionando tem que funcionar nas demais, vamos na tentativa e erro..

logo abaixo do insert do usuario coloque:

echo "Usuario : $usu_cpf_cnpj";
mysql_query ("
INSERT INTO telefone (tel_usuario, tel_tipo, tel_numero, tel_celular)
VALUES ("$usu_cpf_cnpj','$tel_tipo','$tel_numero','$tel_celular')");
exit;
Veja se exibe na tela o codigo e se foi incluido na tabela de telefone ou se exibe algum erro de SQL
uma coisa.. se for colocar a variavel não precisa colocar o ".$VAR.'" pode colocar direto '$VAR'
Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...