Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal,
Possuo o seguinte formulário que deveria executar a seguinte ação: ao selecionar o checkbox, faço as alterações nos campos referentes ao checkbox selecionado e clicando no botão submit, ele atualiza os dados no BD e envia as imagens para uma pasta. Mas isso não está acontecendo.
Seguem abaixo os códigos:
<?php
mysql_connect("localhost", "root", "") or die("Não foi possivel conectar ao servidor.");
mysql_select_db("lab") or die("Não foi possível selecionar o Banco de Dados.");
$sql = "SELECT * FROM trabalhos ORDER BY id ASC";
$resultado = mysql_query($sql) or die ("Não foi possível realizar a consulta.");
echo "<form action='alterar-checkbox.php' method='post' enctype='multipart/formdata'>\n";
echo "<fieldset>\n";
while ($linha = mysql_fetch_array($resultado))
{
echo "<input type='checkbox' name='op[]' value='{$linha['id']}' /> Editar ID {$linha['id']}\n";
echo "<label for='id'>ID: </label>\n";
echo "<input type='text' name='id' value='{$linha['id']}' />\n";
echo "<label for='imagens'>Imagens: </label>\n";
echo "<input type='file' name='imagens[]' />\n
<input type='file' name='imagens[]' />\n
<input type='file' name='imagens[]' />\n
<input type='file' name='imagens[]' />\n";
echo "<label for='titulo'>Título: </label>\n";
echo "<input type='text' name='titulo' value='{$linha['titulo']}'/>\n";
echo "<label for='resumo'>Resumo: </label>";
echo "<input type='text' name='resumo' value='{$linha['resumo']}' />\n";
echo "<label for='producao'>Produção: </label>";
echo "<textarea name='producao' cols='50' rows='10'>{$linha['producao']}</textarea>\n";
echo "<label for='detalhes'>Detalhes: </label>\n";
echo "<textarea name='detalhes' cols='50' rows='10'>{$linha['detalhes']}</textarea>\n";
}
echo "<input type='submit' name='atualizar' value='Atualizar' />";
echo "</fieldset>\n";
echo"</form>\n";
?>
<?php
$numeroCampos = 4;
$caminho = "uploads/";
$substituir = false;
$id = $_REQUEST['id'];
$nomeArquivo = $_FILES["imagens"]["name"];
$imagens = implode(' ', $nomeArquivo);
$titulo = $_REQUEST['titulo'];
$resumo = $_REQUEST['resumo'];
$producao = $_REQUEST['producao'];
$detalhes = $_REQUEST['detalhes'];
mysql_connect("localhost","root","") or die ("Não foi possível conectar ao Servidor.");
mysql_select_db("lab") or die ("Não foi possível selecionar a base de dados");
@$select = $_POST['op'];
if (!empty($_POST['op']))
{
if ($select == 'op[]')
{
if (count(@$_POST['op']) > 0)
{
foreach ($_POST['op'] AS $id)
{
for ($i = 0; $i < $numeroCampos; $i++)
{
$nomeArquivo = $_FILES["imagens"]["name"][$i];
$nomeTemporario = $_FILES["imagens"]["tmp_name"][$i];
if (!empty($nomeArquivo))
{
$erro = false;
if (file_exists($caminho . $nomeArquivo) AND !$substituir)
{
$erro = "O arquivo <strong>".$nomeArquivo."</strong> já existe";
}
if (!$erro)
{
move_uploaded_file($nomeTemporario, ($caminho . $nomeArquivo));
}
}
else
{
echo "Problema";
}
}
$sql = "UPDATE `trabalhos` SET id='".$id."', imagens='".$imagens."', titulo='".$titulo."', resumo='".$resumo."', producao='".$producao."', detalhes='".$detalhes."' WHERE id=".$op;
$resultado = mysql_query($sql) or die ("Erro ao alterar os dados.");
header("Location: areausuario.php");
exit();
}
}
}
}
else
{
echo "<h2>Erro!</h2>";
echo "<p>Selecione uma das entradas antes de clicar na opção desejada.</p>";
echo "Clique <a href='areausuario.php'>aqui</a> para voltar.";
}
?>
Quero atualizar os dados referentes ao checkbox selecionado, mas não estou obtendo êxito. Podem me ajudar?
Obrigado!
Carregando comentários...