Jump to content


Photo

Dificuldades Em Painel


  • Faça o login para participar
5 replies to this topic

#1 destrutorx

destrutorx

    Hell Yes!

  • Usuários
  • 175 posts
  • Sexo:Masculino
  • Localidade:Nova Iguaçu - RJ
  • Interesses:Quadrinhos, cinema, musica, programação, internet

Posted 15/10/2007, 12:03

Olá, amigos.

Meu painel de administração de site está quase pronto... ele já exclui os dados dos produtos direitinho... só que não consigo fazer a edição de dados...

Eu fiz assim... tem uma página que exibe os dados e ao fim de cada linha um botao editar e um excluir. Ao clicar no botão editar roda um arquivo PHP com um SWITCH. Caso o CASE seja edita, ele exibe uma página com os dados referentes ao produto selecionado e logo abaixo um formulário para enviar as alterações.

Ao clicar no botão enviar as informações são jogadas na página editaproduto.php
Lá ele deveria pegar esses novos dados e fazer o update, mas não ta funcionando. A página tá em branco e não tá alterando nada... podem ajudar?

:wacko:

#2 groovezao

groovezao

    Turista

  • Usuários
  • 45 posts
  • Sexo:Não informado

Posted 15/10/2007, 12:16

ql codigo vc esta usano na pagina editaproduto.php ??

#3 destrutorx

destrutorx

    Hell Yes!

  • Usuários
  • 175 posts
  • Sexo:Masculino
  • Localidade:Nova Iguaçu - RJ
  • Interesses:Quadrinhos, cinema, musica, programação, internet

Posted 16/10/2007, 10:36

editaproduto.php
[codebox]?
include("conecta_mysql.php");
mysql_select_db($bd, $con)or die(mysql_error());
mysql_select_db($bd, $con)or die(mysql_error());
?>
<?
function acentos($registro){
$buscar = array ('.jpg','.gif');
$substitui = array ('','');
$semacento = str_replace($buscar, $substitui, $registro);
return $semacento;
}
?>
<?
// variáveis
$op = $_GET['op'];
$id = $_GET['id'];
$nome = $_POST["nome"];
$descricao = nl2br($_POST["descricao"]);
$categoria = $_POST["categoria"];

switch($op){

case '' :
echo "Falhou!";
break;

case 'update' :

//////////////////////////////////////////////////////////////////////////////////////
//Fazendo o UPLOAD da img
$erro = $config = array();

// Prepara a variável do arquivo
$arquivo = isset($_FILES["foto"]) ?
$_FILES["foto"] : FALSE;

// Tamanho máximo do arquivo (em bytes)
$config["tamanho"] = 99106883;
// Largura máxima (pixels)
$config["largura"] = 350;
// Altura máxima (pixels)
$config["altura"] = 100;

// Formulário postado... executa as ações
if($arquivo)
{
// Verifica se o mime-type do arquivo é de imagem
if(!eregi("^image/(pjpeg|jpeg|png|gif|bmp)$",
$arquivo["type"]))
{
$erro[] = "Arquivo inválido!
A imagem deve ser jpg, jpeg, bmp, gif ou png.<br><br>";
}
else
{
// Verifica tamanho do arquivo
if($arquivo["size"] > $config["tamanho"])
{
$erro[] = "Arquivo em tamanho muito grande! A imagem deve ser de no máximo " . $config["tamanho"] . " bytes.
Envie outro arquivo";
}

// Para verificar as dimensões da imagem
$tamanhos = getimagesize($arquivo["tmp_name"]);

// Verifica largura
if($tamanhos[0] > $config["largura"])
{
$erro[] = "Largura da imagem não deve ultrapassar" . $config["largura"] . " pixels";
}

// Verifica altura
if($tamanhos[1] > $config["altura"])
{
$erro[] = "Altura da imagem não deve ultrapassar" . $config["altura"] . " pixels";
}
}

// Imprime as mensagens de erro
if(sizeof($erro))
{
foreach($erro as $err)
{
echo " - " . $err . "<BR>";
}

echo "<link href=\"meucss.css\" rel=\"stylesheet\" type=\"text/css\" />";
echo "<span class=\"downloadmaterial\">Problemas no envio da imagem. Tente cadastrar novamente, </span><span class=\"dw\"><a href=\"produtos.php\">CLICANDO AQUI</a></span>.";
print "<script>alert('Erro durante Envio!')</script>";
}
// Verificação de dados
// Nenhum erro, executa então o upload...
else
{
// Pega extensão do arquivo
preg_match("/.(gif|bmp|png|jpg|jpeg){1}$/i",
$arquivo["name"], $ext);

// Gera um nome único para a imagem
$imagem_nome = acentos($arquivo["name"]) . "." . $ext[1];
//$imagem_nome = md5(uniqid(time())) . "." . $ext[1];
//$imagem_nome = $arquivo["name"];

// Caminho de onde a imagem ficará
$imagem_dir = "produtos/" . $imagem_nome;

// Faz o upload da imagem
move_uploaded_file($arquivo["tmp_name"] , $imagem_dir);

//inserindo no BD
$sql = mysql_query(" UPDATE produtos SET nome = '".$nome."', descricao = '".$descricao."', imagem = '".$imagem_nome."', categoria = '".$categoria."', caminho = '".$imagem_dir."' WHERE id= '".$id."' ");
if(!$sql){
echo "Erro ao tentar incluir registro: ".mysql_error();
}
else{
print "<script>alert('Produto editado com sucesso!')</script>";
print "<script>window.location.replace('produtos.php')</script>";
}


}
}
//Fim do UPLOAD
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
break;
}

?>[/codebox]

parte do formulário de edição de dados
[codebox]switch($op){

case 'exclui' :
$sql = " DELETE FROM produtos WHERE id= '".$id."' ";
mysql_query($sql);
//redireciona
print "<script>alert('Erro durante Envio!')</script>";
print "<script>window.location.replace('produtos.php')</script>";
break;

case '' :
echo "Falhou!";
break;

case 'edita' :
echo "<html><head><title>Alteração de dados</title>";
echo "<link href=\"meucss.css\" rel=\"stylesheet\" type=\"text/css\" />";
echo "<style type=\"text/css\">";
echo "<!--";
echo ".style0 {";
echo "font-size: 9px;";
echo "font-weight: bold;";
echo "font-family: Arial, Helvetica, sans-serif;";
echo "}";
echo ".style1 {";
echo "color: #FFFFFF;";
echo "font-weight: bold;";
echo "}";
echo ".style3 {";
echo "font-size: 12px;";
echo "color: #FF0000;";
echo "font-weight: bold;";
echo "}";
echo ".style4 {";
echo "color: #000000;";
echo "font-weight: bold;";
echo "}";
echo ".style5 {";
echo "font-size: 12px;";
echo "color: #b22622;";
echo "font-weight: bold;";
echo "}";
echo "-->";
echo "</style>";
echo "</head><body>";
echo "<table width=\"569\" align=\"center\">";
echo "<tr>";
echo "<td colspan=\"2\" bgcolor=\"b22622\"><div align=\"center\" class=\"style1\">Editando Produto</div></td>";
echo "</tr>";
echo "<tr>";
echo "<td colspan=\"2\">&nbsp;</td>";
echo "</tr>";
echo "<tr>";
echo "<td><span class=\"style3\">Código:</span></td><td><strong>".$registro['id']."</strong></td>";
echo "</tr>";
echo "<tr>";
echo "<td><span class=\"style3\">Nome:</span></td><td><strong>".$registro['nome']."</strong></td>";
echo "</tr>";
echo "<tr>";
echo "<td><span class=\"style3\">Descrição:</span></td><td><strong>".$registro['descricao']."</strong></td>";
echo "</tr>";
echo "<tr>";
echo "<td><span class=\"style3\">Categoria:</span></td><td><strong>".$registro['categoria']."</strong></td>";
echo "</tr>";
echo "<tr>";
echo "<td colspan=\"2\">&nbsp;</td>";
echo "</tr>";
echo "<tr>";
echo "<td colspan=\"2\">&nbsp;</td>";
echo "</tr>";
echo "</table>";
echo "<br>";


echo "<form name=\"forme\" method=\"post\" action=\"editaproduto.php\" enctype=\"multipart/form-data\">";
echo "<table align=\"center\">";
echo "<tr>";
echo "<td width=\"46\"><span class=\"style3\">Nome:</span></td><td><input name=\"nome\" type=\"text\" id=\"nome\" size=\"22\" maxlength=\"50\"></td>";
echo "</tr>";
echo "<tr>";
echo "<td><span class=\"style3\">Categoria:</span></td><td>";
echo "<select name=\"categoria\" id=\"select\" class=\"style5\">";
echo "<option value=\"".$registro2['categoria']."\">".$registro2['categoria']."</option>";
echo "</select></td>";
echo "</tr>";
echo "<tr>";
echo "<td><span class=\"style3\">Imagem:</span></td><td><input name=\"foto\" type=\"file\" class=\"style4\" id=\"foto\" /> <span class=\"style0\">Altura máxima de 100px.</span></td>";
echo "</tr>";
echo "<tr>";
echo "<td><span class=\"style3\">Descrição:</span></td><td><textarea name=\"descricao\" cols=\"60\" rows=\"3\" id=\"descricao\"></textarea></td>";
echo "</tr>";
echo "<tr><td colspan=\"2\"><div align=\"center\">";
echo "<a href=\"editaproduto.php?op=update&id=".$id."\">ALTERAR</a>";
echo "</div></td></tr>";
echo "</table>";
echo "</form>";


echo "</body>";
echo "</html>";
break;

}[/codebox]

Me ajudem, galera... já quebrei a cabeça o dia todo e não sei mais o que fazer!!!!

HELLLPPPP!!!!

Eu acho que ele não tá recoenhecendo ID... como se não tivesse conseguindo puxá-lo... mas por que???

Edição feita por: destrutorx, 16/10/2007, 10:17.
[CODEBOX] adicionada. Mais uma vez. =]


#4 diego.rodriguez

diego.rodriguez

    Hey Ho Let's Go!

  • Usuários
  • 497 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte | MG
  • Interesses:.: programação<br />.: fotografia<br />.: PHP<br />.: punk rock/hc<br />.: games<br />.: brahma

Posted 16/10/2007, 10:58

cara no lugar disso aqui "<a href=\"editaproduto.php?op=update&id=".$id."\">ALTERAR</a>" coloca um botao html para assim enviar o formulario atraved do post para vc pegar as variaveis na outra pagina

ai vc pode criar um campo hidden para o id e o op

Edição feita por: diego.rodriguez, 16/10/2007, 11:05.


#5 destrutorx

destrutorx

    Hell Yes!

  • Usuários
  • 175 posts
  • Sexo:Masculino
  • Localidade:Nova Iguaçu - RJ
  • Interesses:Quadrinhos, cinema, musica, programação, internet

Posted 16/10/2007, 11:29

Campo Hidden???

#6 k9studio

k9studio

    k9studio

  • Usuários
  • 291 posts
  • Sexo:Masculino
  • Interesses:php, mysql, asp

Posted 16/10/2007, 15:18

Campo Hidden???



isso abaixo é campos hidden
<input name="id" type="hidden" id="id" value="<?= $id ?>" />
<input name="op" type="hidden" id="op" value="<?= $op ?>" />




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq