Crud com validações como fazer?
Fala galera, sou novo em programação estou com uma duvida e dificuldade em validar o a parte de UPDATE (em que o usuário vai editar seus dados) vcs tem alguma sugestão?
alterar.php, onde tem formulario do UPDATE
<?php
include "arquivo.class.php";
$arquivo = new Usuarios();
if(!empty($_GET['id'])) {
$id = $_GET['id'];
$info = $arquivo->getInfo($id);
if(empty($info['email'])) {
header("Location: principal.php");
exit;
}
// caso contrario manda para o index:
}else {
header("Location: alterar.php?retorno=303");
// Um exit para garantir que ele não vai exibir o resto do conteudo.
exit;
}
?>
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet"= href="style2.css">
<link href="css/bootstrap.min.css" rel="stylesheet"/>
<script src="js/bootstrap.min.js"></script>
</head>
<body>
<div class="div">
<h1 class="h1">Editar</h1>
<form method="POST" action="alterar_submit.php">
<div class="form-group">
<input type="hidden" name="id" value="<?php echo $id; ?>" />
<label for="nome1">Nome</label>
<input id="nome1" type="text" name="nome" class="form-control" aria-describedby="nomeHelp" placeholder="Seu nome"><br></br>
<label for="email1">Email</label>
<input id="email1" type="email" name="email" class="form-control" aria-describedby="emailHelp" placeholder="Seu email"><br></br>
<button type="submit" name="Confirmar" class="btn btn-primary">Alterar</button><br></br>
</div>
</div>
</form>
</body>
</html>
principal.php
<?php
session_start();
if(!isset($_SESSION['login'])){
header("Location: index.php?login=semsessao");
}
?>
<?php
include "arquivo.class.php";
$arquivo = new Usuarios();
?><!DOCTYPE html>
<html>
<head>
<title></title>
<link href="css/bootstrap.min.css" rel="stylesheet"/>
<script src="js/bootstrap.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="index.php">Login</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Dropdown
</a>
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">Something else here</a>
</div>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">Disabled</a>
</li>
</ul>
<form class="form-inline my-2 my-lg-0">
<input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
</form>
</div>
</nav>
<br>
<div class="alert alert-success" role="alert" style="display:none;">
<center>Cadastro realizado com suscesso!</center>
</div>
<br>
<div class="row">
<div class="col-1"></div>
<div class="col-10">
<a href="cadastrar.php"><button class="btn btn-primary">Cadastrar</button></a>
</div>
<div class="col-1"></div>
</div>
<br>
<div class="row">
<div class="col-1"></div>
<div class="col-10">
<table class="table table-striped">
<tr>
<th>Id</th>
<th>Nome</th>
<th>Email</th>
<th></th>
<th></th>
</tr>
<?php
$lista = $arquivo->getAll();
foreach($lista as $item):
?>
<tr>
<td><?php echo $item['id']; ?></td>
<td><?php echo $item['nome']; ?></td>
<td><?php echo $item['email']; ?></td>
<td>
<a class="btn btn-primary" href="alterar.php?id=<?php echo $item['id']; ?>"> Alterar</a>
</td>
<td>
<a class="btn btn-danger"href="excluir.php?id=<?php echo $item['id']; ?>"> Excluir</a>
</td>
</tr>
<?php endforeach; ?>
</table>
</div>
<div class="col-1"></div>
</div>
</body>
</html>
<?php
$retorno = -1;
if(!empty($_GET['retorno'])) {
$retorno = $_GET['retorno'];
}
if($retorno <> -1){
if ($retorno == 1){
echo "<script type='text/javascript'>
$(document).ready(function(){
$('.alert-success').text('Usuário cadastrado com sucesso!');
$('.alert-success').slideUp( 300 ).delay( 800 ).fadeIn( 400 ).delay( 2000).fadeOut( 400 );
});
</script>";
}
if ($retorno == 201){
echo "<script type='text/javascript'>
$(document).ready(function(){
$('.alert-success').text('Usuário excluído com sucesso!');
$('.alert-success').slideUp( 300 ).delay( 800 ).fadeIn( 400 ).delay( 2000).fadeOut( 400 );
});
</script>";
}
if ($retorno == 301){
echo "<script type='text/javascript'>
$(document).ready(function(){
$('.alert-success').text('Usuário alterado com sucesso!');
$('.alert-success').slideUp( 300 ).delay( 800 ).fadeIn( 400 ).delay( 2000).fadeOut( 400 );
});
</script>";
}
if ($retorno == 401){
echo "<script type='text/javascript'>
$(document).ready(function(){
$('.alert-success').text('Bem Vindo! À sua página principal!');
$('.alert-success').slideUp( 300 ).delay( 800 ).fadeIn( 400 ).delay( 2000).fadeOut( 400 );
});
</script>";
}
}
?>
<?php
include "arquivo.class.php";
$arquivo = new Usuarios();
if(!empty($_POST['id'])) {
$id = $_POST['id'];
if(!empty($_POST['nome'])) {
$nome = $_POST['nome'];
if(!empty($_POST['email'])) {
$email = $_POST['email'];
// Classe cadastrar chamada:
if ($arquivo->alterar($nome, $email, $id)){
header("Location: principal.php?retorno=301");
}else{
header("Location: alterar.php?retorno=302");
}
}
}
}
Essa ultima alterar_submit.php esse pega os dados do formulario
PS: Fiz essa variavel retorno para validar assim mandar uma mensagem de erro para o usuario so que nao deu mt certoDiscussão (2)
Carregando comentários...