Ir ao conteúdo

Posts recomendados

Postado
<?php 
	//Pegar os dados se o $_POST for ativado
	if(isset($_POST["nome"])) {
		$nome      		 = utf8_decode($_POST["nome"]);
		$sobrenome 		 = utf8_decode($_POST["sobrenome"]);
		$email           = $_POST["email"];
		$usuario   		 = $_POST["usuario"];
		$senha     		 = $_POST["senha"];
		$confirmarsenha  = $_POST["confirmarsenha"];
		$faculdade 		 = utf8_decode($_POST["faculdade"]);
		$curso 			 = utf8_decode($_POST["curso"]);
		$nascimento 	 = $_POST["nascimento"];	

		if (empty($nome) OR empty($sobrenome) OR empty($email) OR empty($usuario)) {
			$mensagemNome = "PREENCHA TODOS OS CAMPOS";
		}elseif ($senha != $confirmarsenha){
			$mensagemSenha = "SENHAS DIFERENTES. FAVOR DIGITAR NOVAMENTE.";
		}else {
			//Inserção no banco de dados
			$inserir = "INSERT INTO usuarios (nome,sobrenome,email,usuario,senha,confirmarsenha,faculdade,curso,datanascimento) VALUES('$nome','$sobrenome','$email','$usuario',md5('$senha'),md5('$confirmarsenha'),'$faculdade','$curso','$nascimento')";
			$operacao_inserir = mysqli_query($conexao,$inserir);
			if( !$operacao_inserir) {
				die("Desculpe! Falha ao conectar ao banco de dados. Entre em contato com o suporte: ");
		 }

		}
	} 
		//Selecionar faculdades
		$select 		  = "SELECT faculdadeID, nomefaculdade FROM faculdades";
		$lista_faculdades = mysqli_query($conexao,$select);
		if ( !$lista_faculdades) {
			die("Desculpe!: Falha ao conectar ao banco de dados. Entre em contato com o suporte: ");
		}

		//Selecionar cursos
	
	
?>

<div class="container">
		<div class="row">
			<div class="col-lg-6 col-md-8 mx-auto">
				<div class="card card-signin my-5">
					<div class="card-body">
						<h3 class="card-title">CRIE SUA CONTA</h3>
							<form class="form-signin" method="post" action="cadastro.php">
								<h6 class="mensagem"><?php 
												if(isset($mensagemNome)) {
												echo $mensagemNome;}  ?>	
								</h6>
								<div class="row">
									<div class="col-lg-6 col-md-12">
										<div class="form-group">
											<label class="label" for="nome">NOME</label>
											<input class="form-control" type="text" id="nome" name="nome" placeholder="NOME">
										</div>
									</div>
									<div class="col-lg-6 col-md-12">
										<div class="form-group">
											<label class="label"  for="sobrenome">SOBRENOME</label>
											<input class="form-control" type="text" id="sobrenome" name="sobrenome" placeholder="SOBRENOME">
										</div>
									</div>
								</div>
								<div class="form-group">
									<label class="label"  for="email">EMAIL</label>
									<input class="form-control" type="email" id="email" name="email" placeholder="E-MAIL">
								</div>

								<div class="form-group">
										<label class="label"  for="usuario">USUÁRIO</label>
										<div class="input-group">
										<div class="input-group-prepend">
	          								<div class="input-group-text">@</div>
	        							</div>
										<input class="form-control" type="text" id="usuario" name="usuario" placeholder="USUÁRIO">
									</div>
								</div>

								<div class="row">
									<div class="col-lg-6 col-md-12">
										<div class="form-group">
										<label class="label"  for="senha">SENHA</label>
										<input class="form-control" type="password" id="senha" name="senha" placeholder="SENHA">
										</div>
									</div>

									<div class="col-lg-6 col-md-12">
										<div class="form-group">
											<label class="label"  for="confirmarsenha">CONFIRMAR SENHA</label>
											<input class="form-control" type="password" id="confirmarsenha" name="confirmarsenha" placeholder="CONFIRMAR SENHA">
										</div>
									</div>
								</div>
										<h6 class="mensagem">
											<?php 
												if(isset($mensagemSenha)){
												echo $mensagemSenha;}  
											?>	
								    	</h6>								
								<hr>
								<div class="form-group">
									<label class="label"  for="faculdade">FACULDADE</label>
									<select class="form-control" name="faculdade" id="faculdade">
										<option>
											SELECIONE A SUA FACULDADE
										</option>
										<?php while($linha = mysqli_fetch_assoc($lista_faculdades)) {?>
										<option value="<?php echo $linha['faculdadeID']; ?>">
											<?php echo utf8_encode($linha['nomefaculdade']);?>
										</option>
										<?php } ?>
									</select>
									<h6 class="mensagem">
										<?php 
												if(isset($mensagemFaculdade)) {
												echo $mensagemFaculdade;}  
										?>	
									</h6>
								</div>

								<!-- OBS.: FAZER COM QUE OS CURSOS APAREÇAM BASEADOS NA FACULDADE -->
								<div class="form-group">
									<label class="label"  for="curso">CURSO</label>
									<select class="form-control" name="curso" id="curso">
										<option>
											SELECIONE O SEU CURSO
										</option>
									</select>
								</div>

								<div class="form-group">
									<label class="label" for="nascimento">DATA DE NASCIMENTO</label>
									<input class="form-control" type="date" id="nascimento" name="nascimento">
								</div>
								<div class="row">
									<div class="col-md-4">
										<a class="roxo btn btn-block" role="button" href="index.php">VOLTAR</a>
									</div>
									<div class="col-md-8">
										<input id="cadastrar" name="cadastrar" class="btn btn-block" type="submit" value="CADASTRAR">
									</div>
								</div>
							</form>
					</div>
				</div>
			</div>
		</div>
	</div>

Gostaria de uma direção sobre como criar um sistema de editar cadastro baseado nesse sistema de cadastro que criei.

*Já tentei algumas formas porém não obtive sucesso.

Grato desde já.

  • Moderador
Postado

@Fertiin Olá,  

Basicamente você crie o formulário com todos os campos que serão "preenchidos" com valores do banco de dados.

Faça a query no banco e recupere os valores. Insira eles com value no campo destinado. 

 

Exemplo bem simples para você entender:

Tabela usuario:

ID   nome    email
1    Fulano  [email protected]

 

<?php
   session_start();
   include 'conexao.php';
   $id = $_SESSION["id"];

   $select = mysqli_query($conexao, "select nome, email from usuario WHERE id=$id ");  

   $usuario = $mysqli_fetch_object($select);

?>

 <form action="atualiza.php" method="post">
     <input type="text" name="nome" value="<?php echo $usuario->nome?>" />
     <input type="text" name="email" value="<?php echo $usuario->email?>" />
 </form>

Então, no arquivo atualiza.php, você recebe os dados por post, e faz um update set na tabela destinada.

  • Curtir 1
Postado
<?php 
require_once('conexao.php');
session_start();
$id = $_SESSION['id'];

$select = mysqli_query($conexao, "SELECT nome,sobrenome,email,usuario,senha,confirmarsenha, faculdade, curso, datanascimento FROM usuarios 	WHERE id = '{$id}' ");

$usuario = mysqli_fetch_object($select);


?>

<!-- Parte do formulário -->
<div class="form-group">
		<label class="label" for="nome">NOME</label>
	    <input class="form-control" type="text" id="nome" name="nome" value="<?php echo $usuario->nome?>" placeholder="NOME">
</div>

Tá dando esse erro: Notice: Undefined index: id in C:\xampp\htdocs\Projeto\editarperfil.php on line 4

E esse erro dentro do input nome: <br /><b>Notice</b>:  Trying to get property 'nome' of non-object in <b>C:\xampp\htdocs\Projeto\editarperfil.php</b> on line <b>118</b><br />

Postado

@Fertiin

15 minutos atrás, Fertiin disse:

Tá dando esse erro: Notice: Undefined index: id in C:\xampp\htdocs\Projeto\editarperfil.php on line 4

E esse erro dentro do input nome: <br /><b>Notice</b>:  Trying to get property 'nome' of non-object in <b>C:\xampp\htdocs\Projeto\editarperfil.php</b> on line <b>118</b><br />

esse nome ali ele vem do banco de dados ?

 

Postado

@Fertiin Qual a versão do seu php porque: mysqli_fetch_object foi removido na versão 7 

esse erro da porque não esta achando 'nome'

28 minutos atrás, Fertiin disse:

$select = mysqli_query($conexao, "SELECT nome,sobrenome,email,usuario,senha,confirmarsenha, faculdade, curso, datanascimento FROM usuarios WHERE id = '{$id}' ");

o $id ali  esta com a sintaxe errada use assim:

$select = mysqli_query($conexao, "SELECT nome,sobrenome,email,usuario,senha,confirmarsenha, faculdade, curso, datanascimento FROM usuarios WHERE id = '$id' ");

 

adicionado 7 minutos depois
<?php 
	$mysqli = new mysqli($host, $user, $pass, $db);
	$sql = "SELECT nome,sobrenome,email,usuario,senha,confirmarsenha, faculdade, curso, datanascimento FROM 	usuarios WHERE id = '$id' ";
	$consulta = $mysqli -> query($sql);
	while ($row = $consulta -> fetch_assoc () ) {
		$usuario = $row["nome"];
	}
?>

tente substituir o seu código por esse e veja o resultado, se der erro pegue o sql e coloque o no sql do seu banco de dados e veja se ele acha algo se não achar a algo de errado no seu código

Postado

Versão PHP : 7.3.0

adicionado 3 minutos depois

Esse $_SESSION['id'] já deveria estar definido antes ou deve ser definido na página de alteração?

Postado

@Fertiin deveria ser setado quando o usuário faz o login exemplo:

<?php
$query = "SELECT * FROM tabela WHERE colunadosusuarios = $_POST['usuario']"; #aqui você pega os dados do usario no banco de dados

$resultados = mysql_fetch_array($query);

$_SESSION['id'] = $resultados['id']

$_SESSION['usuario'] = $resultados['usuario']

$_SESSION['senha'] = $resultados['senha']
  
?>

esse é um modo de obter o id e armazenar na session 

adicionado 12 minutos depois
20 minutos atrás, Fertiin disse:

Versão PHP : 7.3.0

você terá que editar o seu código então, pois  mysqli_fetch_object não é mais usado na versão 7

vou dar um help:

<?php 
	session_start();
	$id = $_SESSION['id'];
	$host = "host";
	$user = "user";
	$pass = "pass";
	$bd = "banco";
	$mysqli = new mysqli($host, $user, $pass, $bd);
	$sql = "SELECT nome,sobrenome,email,usuario,senha,confirmarsenha, faculdade, curso, datanascimento FROM usuarios WHERE id = '$id' ";
	$consulta = $mysqli -> query($sql);
	while ($row = $consulta -> fetch_assoc () ) {
		$usuario = $row["nome"];
	}
?>
<!-- Parte do formulário -->
<div class="form-group">
		<label class="label" for="nome">NOME</label>
	    <input class="form-control" type="text" id="nome" name="nome" value="<?php echo $usuario ?>" placeholder="NOME">
</div>

 

  • Moderador
Postado

@Matheus Evandro Rech

6 horas atrás, Matheus Evandro Rech disse:

Qual a versão do seu php porque: mysqli_fetch_object foi removido na versão 7 

Você não confundiu com o antigo mysql?    O mysqli_fetch_object é uma função para orientação ao objetos usando a nova extensão mysqli  com  " i " no final.  Acho bem difícil removerem do php, mas sua função antiga sim. 

 

@Fertiin

6 horas atrás, Fertiin disse:

Esse $_SESSION['id'] já deveria estar definido antes ou deve ser definido na página de alteração?

 

O session com o ID deve ser criado no momento do login, por isso recomendo que você pesquise por sistemas de login aqui no fórum que tem muitos exemplos dessa parte.

 

6 horas atrás, Matheus Evandro Rech disse:

o $id ali  esta com a sintaxe errada use assim:

Também não dá para dizer que está errado, porque se usa aspas quando for uma string.  quando é inteiro no caso uma ID pode deixar sem aspas.

 

O erro ali é que ele está tentando acessar uma propriedade orientada objetos sem ser.

 

O problema disso é que simplesmente não se pode copiar os códigos de exemplo que sempre darão errado.  Tem que estudar e entender.

 

Para começo, o esquema ali ta todo errado.  Pois tem que implementar no sistema de login as sessions.

MInha sugestão,  não use mais os códigos postados aqui,  e estude eles para entender. não adianta a gente por exemplos e tu vai lá e copia e volta dizendo que tem erros.

 

Uma coisa importante não misture procedural com o orientada a objetos,  e principalmente evite de usar partes de orientada a objetos sem nem saber a parte procedural.

 

 

Postado
50 minutos atrás, DiF disse:

Também não dá para dizer que está errado, porque se usa aspas quando for uma string.  quando é inteiro no caso uma ID pode deixar sem aspas.

mais esta com chaves {'$id'}, eu nunca vi com chaves só se tiver, mais não conheço 

adicionado 3 minutos depois
54 minutos atrás, DiF disse:

Você não confundiu com o antigo mysql?    O mysqli_fetch_object é uma função para orientação ao objetos usando a nova extensão mysqli  com  " i " no final.  Acho bem difícil removerem do php, mas sua função antiga sim.

Sim eu troquei!

  • Moderador
Postado
43 minutos atrás, Matheus Evandro Rech disse:

mais esta com chaves {'$id'}, eu nunca vi com chaves só se tiver, mais não conheço 

Ah sim, ali especificamente não se usa as chaves, mas em outra ocasião sim. 

 

Exemplo de uso do  { }  no php:

 

include_once 'Pessoa.class.php';

$carlos = new Pessoa();

$carlos->nome = "Carlos da silva";
$carlos->escolaridade = "Ensino Superior";

echo "{$carlos->nome} tem o {$carlos->escolaride} completo";

Saída:  Carlos da silva tem o Ensino Superior completo

 

Basicamente o { } na orientação a objetos é usado para acessar o objeto também

 

Mas no caso do código do usuário acima, não serve para inserir em uma query no banco de dados.

 

 

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!