DanielaL9 Posted June 22, 2014 at 03:39 PM Report #560059 Posted June 22, 2014 at 03:39 PM Boa Tarde pessoal Eu estou aqui com um problema urgente. eu estou a criar um metodo de edição e eliminação de contas criadas num website. O código que eu tenho foi inspirado em grande parte deste video /http://rafaelcouto.com.br/artigos/php_sistema_de_cadastro_2/acontece que fiz as alterações necessárias e não consigo editar os dados por causa deste erro : Citação Notice: Undefined variable: error in C:\xampp\htdocs\pap2014\cliente.php on line 137 Liga.php <?php $connect = mysql_connect('localhost','root',''); $db = mysql_select_db('web_clientes'); ?> Index.php <?php // Arquivo de conexão com o banco de dados include("liga.php"); // Script para restringir página include("password.php"); ?> <html> <head> <meta http-equiv="content-type" content="text/html;charset=iso-8859-1" /> <title>Cabeleireiro Preto e Prata - Site Oficial © </title> <!--CSS--> <link rel="stylesheet" href="estilo.css" type= "text/css" media="screen"> </head> <body> <div id="conteudo"> <br> <h2 align="center">ADMINISTRADOR</h2> <p align="center">Contas Criadas </p> <br> <?php // Seleciona os clientes da bd $sql = mysql_query("SELECT * FROM conta"); echo "<table align=center border= 0>"; while($clientes = mysql_fetch_object($sql)) { echo "<tr><td><a href='cliente.php?login=".$clientes->login."'>".$clientes->nome."</a></td></tr>"; } echo "</table>"; ?> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <a href="home.html"><img src="home.jpg" align="right"></a> </table> </div> Cliente.php <?php include("liga.php"); // Script para restringir página include("password.php"); $login = $_GET['login']; $acao = $_GET['acao']; // ACAO DE EDITAR CLIENTE if ($acao == "editar") { // Recupera as novas informações do cliente $email = $_POST['email']; $contactos = $_POST['contactos']; $localidade = $_POST['localidade']; // Email if (!preg_match("/^[a-z0-9_\.\-]+@[a-z0-9_\.\-]*[a-z0-9_\-]+\.[a-z]{2,4}$/", $email)) { $error[1] = "Preencha com um email válido"; } // Telefone if ($contactos == "") { $error[2] = "Preencha o campo telefone"; } elseif (!preg_match("/^[0-9]{9} $/", $contactos)) { $error[2] = "Telefone em formato inválido"; } // Localidade if (!preg_match("/^[a-z0-9_\.\-][a-z0-9_\.\-]*[a-z0-9_\-]+\.[a-z]{2,4}$/", $localidade)) { $error[3] = "Preencha com uma localidade válida"; } // Caso não haja erros if (sizeof($error) == 0) { // Altera as informações da bd $sql = mysql_query("UPDATE conta SET email = '".$email."', contactos = '".$contactos."', localidade = '".$localidade."' WHERE login = '".$login."'"); // Caso altere os dados com sucesso if ($sql) { echo "<script language='javascript'>alert('Cliente editado com sucesso'); window.location.href = 'cliente.php?login=".$login."'</script>"; // Caso haja algum problema na alteração } else { echo "<script language='javascript'>alert('Não foi possível editar o cliente')</script>"; } } } // ACAO DE REMOVER CLIENTE if ($acao == "remover") { // Remove cliente $sql = mysql_query("DELETE FROM conta WHERE login = '".$login."'"); // Caso remova o cliente com sucesso if ($sql) { echo "<script language='javascript'>alert('Cliente removido com sucesso'); window.location.href = 'index.php'</script>"; // Caso haja algum problema na remoção } else { echo "<script language='javascript'>alert('Não foi possível remover o cliente')</script>"; } } ?> <html> <head> <meta http-equiv="content-type" content="text/html;charset=iso-8859-1" /> <title>Cabeleireiro Preto e Prata - Site Oficial © </title> <!--CSS--> <link rel="stylesheet" href="estilo.css" type= "text/css" media="screen"> <script language='javascript'> // Função para confirmar a remoção do cliente function confirmar(login) { var confirma = confirm('Deseja remover esse cliente?'); if (confirma) { window.location.href = "cliente.php?login="+login+"&acao=remover"; } } </script> </head> <body> <div id="conteudo"> <br> <h2 align="center">ADMINISTRADOR</h2> <p align="center">Contas Criadas </p> <br> <?php // Recuperando informações do cliente do banco de dados $sql = mysql_query("SELECT * FROM conta WHERE login = '".$login."'"); // Armazenando informações do cliente $cliente = mysql_fetch_array($sql); ?> <h3 align="center">Informações de <?php echo $cliente['nome'] ?></h3> <?php // Caso haja erros if (sizeof($error) != 0) { Linha referente ao erro // Exibe os erros foreach ($error as $err) { echo "<font color='red'><b>" .$err . "</b></font><br />"; } } ?> <form method="post" align="center"action="cliente.php?login=<?php echo $login ?>&acao=editar"> <p><strong>Email:</strong><input name="email" type="text" value="<?php echo $cliente['email'] ?>" /></p> <p><strong>Contacto:</strong><input name="contactos" type="text" value="<?php echo $cliente['contactos'] ?>" /></p> <p><strong>Localidade:</strong><input name="localidade" type="text" value="<?php echo $cliente['localidade'] ?>" /></p> <br> <input type="submit" value="Editar Cliente" /> <input type="button" value="Remover Cliente" onclick="confirmar('<?php echo $login ?>')" /> </form> <p align="center"><a href='index.php'>Voltar</a></p> <br><br><br><br><br><br><br><br><br> </div> </body> </html> Alguém pode ajudar? é urgente estou farta de pesquisar e nada. Obrigada
oxyzero Posted June 22, 2014 at 04:18 PM Report #560065 Posted June 22, 2014 at 04:18 PM No teu Cliente.php tens de iniciar a variável error. $error = array(); Se estiveres a usar a versão do PHP > 5.4 (julgo eu) podes fazer desta forma também: $error = []; Além disso, isso não é um erro, mas sim uma observação/aviso.
DanielaL9 Posted June 22, 2014 at 09:25 PM Author Report #560098 Posted June 22, 2014 at 09:25 PM Obrigada ficou resolvido só tenho mais uns erros mas não têm haver com o problema inicial
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now