Boa noite a todos, PHP 7, Banco de dados trabalhado no phpMyAdmin - PDO Tenho um form onde tem como objetivo Cadastrar, Alterar e Excluir e, para isso, tem os botões "Cadastrar", "Alterar" e "Excluir". Com ajuda de alguns amigos foi possível "Cadastrar" visto que não estava sendo possível considerando que o form estava exigindo o preenchimento de todos os campos e com isso inviabiliza o propósito do formulário de cadastramento. Vou postar o código todo do index.php, mas adianto que somente a parte de "Alterar" não está funcionando, ou seja, abrindo o "modal", mostra os registros daquela linha, porém qualquer alteração, clicando no botão "Alterar" nenhum registro é alterado. Esse script é de uma aula que funciona perfeitamente Cadastra, Altera e Exclui, este código só tem mais campos: Todo código do formulário da página index.php
<?php
// Salvo em C:\wamp\controleatividades\metadados\Index.php;
//require_once 'classes/Usuarios.php';
function __autoload($class) {
require_once '../classes/' . $class . '.php';
}
?>
<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<title>Controle de Atividades - Orientado a Objetos</title>
<!-- Bootstrap -->
<link href="../css/bootstrap.min.css" rel="stylesheet">
<script>
var ch = '<?php echo sha1(time()); ?>';
</script>
</head>
<body>
<div class="container">
<header>
<img src="imagens/logo.png"/>
<div class="well">
<h1 class="text-center">Controle de Atividades <br><span class="text-primary">Estudos</span></h1>
</div>
</header>
<!-- Form cadastrar -->
<div style="margin: 100px 0; text-align: center">
<?php
$usuario = new Usuarios();
// Cadastro de Usuario
if ( isset($_POST['cadastrar']) ):
$nome_atividade = $_POST['nome_atividade'];
$nome_livro = $_POST['nome_livro'];
$nome_autor = $_POST['nome_autor'];
$nome_editora = $_POST['nome_editora'];
$quant_fl = $_POST['quant_fl'];
$fl_parei = $_POST['fl_parei'];
$data_inicio = !$_POST['data_inicio']? NULL :
date('Y-m-d', strtotime(str_replace('/','-',$_POST['data_inicio'])));
$data_termino = !$_POST['data_termino'] ? NULL :
date('Y-m-d', strtotime(str_replace('/','-',$_POST['data_termino'])));
$data_paralisacao = !$_POST['data_paralisacao'] ? NULL :
date('Y-m-d', strtotime(str_replace('/','-',$_POST['data_paralisacao'])));
$observacao = $_POST['observacao'];
$usuario->setNome_atividade($nome_atividade);
$usuario->setNome_livro($nome_livro);
$usuario->setNome_autor($nome_autor);
$usuario->setNome_editora($nome_editora);
$usuario->setQuant_fl($quant_fl);
$usuario->setFl_parei($fl_parei);
$usuario->setData_inicio($data_inicio);
$usuario->setData_termino($data_termino);
$usuario->setData_paralisacao($data_paralisacao);
$usuario->setObservacao($observacao);
if ($usuario->insert()) {
echo '<div class="alert alert-success alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
<strong>OK!</strong> Incluido com sucesso!!! </div>';
} else {
echo '<div class="alert alert-success alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
<strong>OK!</strong> Erro ao alterar!!! </div>';
}
endif;
//exclusao de Usuario
if (isset($_POST['excluir_ui'])){
$id = $_POST['id_ui'];
$usuario->delete($id);
}
// Alterar Usuario
if ( isset($_POST['alterar']) ) {
$id = $_POST['id_uii'];
$nome_atividade = $_POST['nome_atividade'];
$nome_livro = $_POST['nome_livro'];
$nome_autor = $_POST['nome_autor'];
$nome_editora = $_POST['nome_editora'];
$quant_fl = $_POST['quant_fl'];
$fl_parei = $_POST['fl_parei'];
$data_inicio = !$_POST['data_inicio'] ? NULL :
date('Y-m-d', strtotime(str_replace('/', '-',$_POST['data_inicio'])));
$data_termino = !$_POST['data_termino'] ? NULL :
date('Y-m-d', strtotime(str_replace('/', '-',$_POST['data_termino'])));
$data_paralisacao = !$_POST['data_paralisacao'] ? NULL :
date('Y-m-d', strtotime(str_replace('/', '-',$_POST['data_paralisacao'])));
$observacao= $_POST['observacao'];
$usuario->setNome_atividade($nome_atividade);
$usuario->setNome_livro($nome_livro);
$usuario->setNome_autor($nome_autor);
$usuario->setNome_editora($nome_editora);
$usuario->setQuant_fl($quant_fl);
$usuario->setFl_parei($fl_parei);
$usuario->setData_inicio($data_inicio);
$usuario->setData_termino($data_termino);
$usuario->setData_paralisacao($data_paralisacao);
$usuario->setObservacao($observacao);
$usuario->update($id);
}
?>
<legend>Formulário Cadastrar</legend>
<form class="form-inline" method="post">
<div class="input-group">
<label class="col-xs-1">Atividade:</label>
<input name="nome_atividade" type="text" class="form-control">
<label class="col-xs-1">Livro:</label><br>
<input name="nome_livro" type="text" class="form-control">
<label class="col-xs-1">Autor:</label><br>
<input name="nome_autor" type="text" class="form-control">
<label class="col-xs-1">Editora:</label><br>
<input name="nome_editora" type="text" class="form-control">
<label class="col-xs-1">Quant.Fls:</label><br>
<input name="quant_fl" type="text" class="form-control">
<label class="col-xs-1">Fls. Parei:</label><br>
<input name="fl_parei" type="text" class="form-control">
<label class="col-xs-1">Início:</label><br>
<input name="data_inicio" type="text" class="form-control">
<label class="col-xs-1">Término:</label><br>
<input name="data_termino" type="text" class="form-control">
<label class="col-xs-1">Paralisação:</label><br>
<input name="data_paralisacao" type="text" class="form-control">
<label class="col-xs-1">Observação:</label><br>
<input name="observacao" type="text" class="form-control">
</div>
<div class="col-xs-pull-2" align="center">
<input name="cadastrar" type="submit" class="btn btn-success" value="Cadastrar">
</div>
</form>
</div>
<!-- Fim form cadastrar -->
<!-- Inicio da tabela -->
<table width="100%" class="table table-striped table-bordered table-hover">
<thead>
<tr class="active">
<th class="text-center">Ativ.</th>
<th class="text-center">Livro</th>
<th class="text-center">Autor</th>
<th class="text-center">Ed.</th>
<th class="text-center">Quant. fl</th>
<th class="text-center">Fl Parei</th>
<th class="text-center">Inicio</th>
<th class="text-center">Término</th>
<th class="text-center">Parei</th>
<th class="text-center">Obs.</th>
<th class="text-center">Op.Alteração</th>
<th class="text-center">Op.Exclusão</th>
</tr>
</thead>
<tbody>
<?php foreach ($usuario->findAll() as $key => $value) { ?>
<tr>
<td width="2%"><?php echo $value->nome_atividade;?> </td>
<td width="50%"><?php echo $value->nome_livro;?> </td>
<td width="10%"><?php echo $value->nome_autor;?> </td>
<td><?php echo $value->nome_editora;?> </td>
<td><?php echo $value->quant_fl;?> </td>
<td><?php echo $value->fl_parei;?> </td>
<td class="text-center"> <?php echo $value->data_inicio;?> </td>
<td class="text-center"> <?php echo $value->data_termino;?> </td>
<td class="text-center"> <?php echo $value->data_paralisacao;?> </td>
<td> <?php echo $value->observacao;?> </td>
<td>
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#myModal" onclick="load_modal
('<?php echo $value->nome_atividade;?>',
'<?php echo $value->nome_livro;?>',
'<?php echo $value->nome_autor;?>',
'<?php echo $value->nome_editora;?>',
'<?php echo $value->quant_fl;?>',
'<?php echo $value->fl_parei;?>',
'<?php echo $value->data_inicio;?>',
'<?php echo $value->data_termino;?>',
'<?php echo $value->data_paralisacao;?>',
'<?php echo $value->observacao;?>',
<?php echo $value->id;?>);">Alterar</button>
</td>
<td>
<form class="form_excluir" method="post" style="float: right; margin: 0 5px;">
<input name="id_ui" type="hidden" value="<?php echo $value->id;?>"/>
<button name="excluir_ui" type="submit" onclick="fn_excluir();" class="btn btn-danger">Excluir</button>
</form>
</td>
</tr>
<?php } ?>
</tbody>
</table>
<!-- Fim da tabela -->
<!-- Modal para alterar Usuário -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel">Alterando Usuário</h4>
</div>
<div class="modal-body">
<form class="form-inline" method="post">
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user col-xs-2">Atividades</span>
<input id="text_nome_atividade" name="nome_atividade" type="text" class="form-control">
</div>
<br/>
<br/>
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user col-xs-2">Livro</span>
<input id="text_nome_livro" name="nome_livro" type="text" class="form-control" required value="" >
</div>
<br/>
<br/>
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user col-xs-2">Autor</span>
<input id="text_nome_autor" name="nome_autor" type="text" class="form-control">
</div>
<br/>
<br/>
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user col-xs-2">Editora</span>
<input id="text_nome_editora" name="nome_editora" type="text" class="form-control">
</div>
<br/>
<br/>
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user col-xs-2">Quant.fls</span>
<input id="text_quant_fl" name="quant_fl" type="text" class="form-control">
</div>
<br/>
<br/>
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user col-xs-2">Fls. Parei</span>
<input id="text_fl_parei" name="fl_parei" type="text" class="form-control">
</div>
<br/>
<br/>
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user col-xs-2">Início</span>
<input id="text_data_inicio" name="data_inicio" type="text" class="form-control" >
</div>
<br/>
<br/>
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user col-xs-2">Término</span>
<input id="text_data_termino" name="data_termino" type="text" class="form-control">
</div>
<br/>
<br/>
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user col-xs-2">Paralisação</span>
<input id="text_data_paralisacao" name="data_paralisacao" type="text" class="form-control" >
</div>
<br/>
<br/>
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user col-xs-2">Obs.</span>
<input id="text_observacao" name="observacao" type="text" class="form-control" >
</div>
<br/>
<br/>
<input id="id_uii" name="id_uii" type="hidden" />
<input name="alterar" type="submit" class="btn btn-warning" value="Alterar">
</form>
</div>
</div>
</div>
</div> <!-- fim Modal -->
</div> <!-- fim cantainer -->
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script src="https://code.jquery.com/jquery-1.11.3.min.js" integrity="sha256-7LkWEzqTdpEfELxcZZlS6wAx5Ff13zZ83lYO2/ujj7g=" crossorigin="anonymous"></script>
<!-- Include all compiled plugins (below), or include individual files as needed -->
<script src="../js/bootstrap.min.js"></script>
<script src="../js/script.js"></script>
}
</body>
</html>
Lembrando, somente a parte de "Alterar" registros não funcional, inclusive no banco de dados. Já Cadastramento e Exclusão funcionam perfeitamente, inclusive no banco de dados phpMyAdmin.