Eu estava seguindo passo-a-passo como fazer um CRUD em php e beleza, tava rodando tudo beleza, dai conforme fui implementando os códigos ele ocasionou em alguns erros. O interessante é que eu segui A RISCA todos os passos da video-aula, tudo mesmo, e continua dando erro.
Além do erro, ainda demora muuuuuuuuuito para a página carregar.
Então pessoal, eu não sei se eu posso mandar o código inteiro aqui para voceis analisarem ou mandar apenas uma parte do código, pois como não tenho muita experiencia com php não sei nem dividir o código para por no fórum =(
Por fim, aí está o código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript">
function confirma(id)
{
$resultado = window.confirm("confirma excluir o registro numero " +id);
if (resultado)
{
window.location = "exclui_dados.php?id=" +id;
}else{
return false;
}
}
</script>
</head>
<?php
require_once "conexao.php";
if ($_POST['nome'] && $_POST['email'] && $_POST['comentario'])
{
$sql = "
INSERT
INTO
tab_crud
(
nome,
email,
comentario,
data_hora
)
VALUES
(
'" . $_POST['nome'] . "',
'" . $_POST['email'] . "',
'" . $_POST['comentario'] . "',
'" . date('Y-m-d') . " " . date('H:i:s') . "'
)";
@mysql_query($sql, $conexao) or die("Erro ao inserir SQL" .mysql_error());
}
// codigo da paginação
if ($_POST['pg'] && ($_POST['pg'] != 0) && is_numeric($_POST['pg']))
{
$pagina_atual = $_POST['pg'];
}else{
$pagina_atual = 1;
}
// pegar a quantidade total de registros da tab_crud
$sql = "SELECT * FROM tab_crud";
$rc = @mysql_query($sql, $conexao) or die("Erro ao contar ".mysql_error());
//pegar o numero de registros que está na tabela
$qtd_total_registros = mysql_num_rows($rc);
// pegando quantas paginas serao necessarias
//numero por paginas (npp)
$npp = 5;
$qtd_total_pg = ceil($qtd_total_registros / $npp);
// SQL`s PARA SABER A LIMIT DA SQL
$pr = (($pagina_atual * $npp) - $npp);
$sql = "SELECT * FROM tab_crud LIMIT " . $pr . ", ".$npp;
//POPULANDO A TABELA
$rs = @mysql_query($sql, $conexao) or die("Erro ao buscar dados ".mysql_error());
?>
<body>
<form id="form1" name="formulario" method="post" action="inserir_dados.php">
<table width="41%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="14%" align="right">Nome:</td>
<td width="86%"><label for="nome"></label>
<input type="text" name="nome" id="nome" /></td>
</tr>
<tr>
<td align="right">E-mail:</td>
<td><label for="email"></label>
<input type="text" name="email" id="email" /></td>
</tr>
<tr>
<td align="right">Comentário:</td>
<td><label for="comentario"></label>
<textarea name="comentario" id="comentario" cols="45" rows="5"></textarea></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="enviar" id="enviar" value="Enviar" />
<input type="reset" name="limpar" id="limpar" value="Limpar" /></td>
</tr>
</table>
</form>
<table width="100%" border="1" align="center" cellpadding="0" cellspacing="0">
<tr bgcolor="#CCCCCC">
<td width="17%">Nome</td>
<td width="18%">Email</td>
<td width="34%">Comentario</td>
<td width="17%">Data e Hora</td>
<td width="7%"> </td>
<td width="7%"> </td>
</tr>
<?php
// enquanto linha estiver recebendo registros do record set (rs) irá executar
while ($linha = mysql_fetch_array($rs))
{
?>
<tr>
<td><?=$linha['nome']?></td>
<td><?=$linha['email']?></td>
<td><?=$linha['comentario']?></td>
<td><?=$linha['data_hora']?></td>
<td><a href="editar_dados.php?id=<?=$linha['id']?>);">Editar</a></td>
<td><a href="#" onclick="confirma(<?=$linha['id']?>);">Excluir</a></td>
</tr>
<?php
}
?>
<tr>
<td colspan="6" align="center">
<?php
// CRIANDO O LINK ANTERIOR SE TIVER
if($pagina_atual > 1){
$link_anterior = "<a href='inserir_dados.php?pg=". ($pagina_atual -1 ) . "'>[ANTERIOR]</a>";
}
// CRIANDO LINK POSTERIOR SE TIVER
if ($pagina_atual < $qtd_total_pg){
$link_posterior = "<a href='inserir_dados.php?pg='" .($pagina_atual +1) . "'[POSTERIOR]</a>";
}
// calculando a primeira pagina
if (($pagina_atual - 4) < 1){
$start = 1;
}else{
$anterior = $pagina_atual - 4;
}
// CALCULANDO A ULTIMA PAGINA
if (($pagina_atual +4 ) > $qtd_total_registros){
$end = $qtd_total_pg;
}else{
$end = $pagina_atual +4;
}
// construindo os links numericos
$link_numerico = "";
for($i=start; $i<=$end;$i++){ // 1; 1 <= fim; i++
if($pagina_atual != $i){ // se a pagina atual não começar em 1, então será executado essa parte do código
$link_numerico .= "<a href='inserir_dados.php?pg=" .$i. "'> [" . $i . "]</a>";
}else{
$link_numerico .= $i;// Se a pagina for = 1, então acrescentará, ao link numerico, a cada vez que entrar nessa condiçao, +1 pagina.
}
}
echo "$link_anterior . '$nbsp;$nbsp;' . $link_numerico . '$nbsp;$nbsp;' . $link_posterior";
?>
</td>
</tr>
</table>
<br />
</body>
</html>
Erros:
Notice: Undefined index: nome in C:\xampp\htdocs\projetos\crud\inserir_dados.php on line 24
Notice: Undefined index: pg in C:\xampp\htdocs\projetos\crud\inserir_dados.php on line 49
Notice: Use of undefined constant start - assumed 'start' in C:\xampp\htdocs\projetos\crud\inserir_dados.php on line 158
Fatal Error: Allowed momery size of 13421728 bytes exhausted (tried to allocate 133693463 bytes ) in C:\xampp\htdocs\projetos\crud\inserir_dados.php on line 160
Não sei se abusei nas informações, mas só assim que consegui me expressar para tirar minhas dúvidas.
Question
Otto N.
Daew galera, beleza?
Eu estava seguindo passo-a-passo como fazer um CRUD em php e beleza, tava rodando tudo beleza, dai conforme fui implementando os códigos ele ocasionou em alguns erros. O interessante é que eu segui A RISCA todos os passos da video-aula, tudo mesmo, e continua dando erro.
Além do erro, ainda demora muuuuuuuuuito para a página carregar.
Então pessoal, eu não sei se eu posso mandar o código inteiro aqui para voceis analisarem ou mandar apenas uma parte do código, pois como não tenho muita experiencia com php não sei nem dividir o código para por no fórum =(
Por fim, aí está o código:
Erros:
Notice: Undefined index: nome in C:\xampp\htdocs\projetos\crud\inserir_dados.php on line 24
Notice: Undefined index: pg in C:\xampp\htdocs\projetos\crud\inserir_dados.php on line 49
Notice: Use of undefined constant start - assumed 'start' in C:\xampp\htdocs\projetos\crud\inserir_dados.php on line 158
Fatal Error: Allowed momery size of 13421728 bytes exhausted (tried to allocate 133693463 bytes ) in C:\xampp\htdocs\projetos\crud\inserir_dados.php on line 160
Não sei se abusei nas informações, mas só assim que consegui me expressar para tirar minhas dúvidas.
Aguardo respostas e agradecendo desde já,
Otto.
Link to comment
Share on other sites
10 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.