Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola Pessoal
Estou com um probleminha aqui na hora de editar compos usando arrays.
não esta editando só preciso que edit um campo
Alguem poderia verificar no que eu estou errando desde já agradeço a todos
<form method="post">
<?
$id1 = $_GET['id'];
$sql = "SELECT * FROM incluidos2 WHERE tipo ='Salgados' AND id_evento ='$id' ";
$result = mysql_query($sql) or die ("Erro na consulta");
$count=mysql_num_rows($result);
while($linha=mysql_fetch_array($result)){
$id = $linha['id'];
$nome = $linha['nome'];
$tipo = $linha['tipo'];
$valor = $linha['valor'];
$unid = $linha['unid'];
$foto = $linha['foto'];
?>
<input type="hidden" name="ID" value="<?echo $id?>" />
<input type="text" name="unidade[]" size="2" value="<?echo $unid?>" />
<?}?>
<br />
<input type="submit" value="Registrar" />
<br /><br />
</form>
<?php
if (isset($_POST['ID'])) {
foreach ($_POST['ID'] as $id3) {
// aqui você faz a parte da exclusão
$sql = "UPDATE incluidos2 SET unid = '$unid' WHERE id='$id3'";
$result = mysql_query($sql);
if($result){
echo "<meta http-equiv=\"refresh\" content=\"0;URL=editar_incluidos.php\">";
}
}}
mysql_close();
?>Você só está passando um Id então você pode fazer assim:
<form method="post">
<?
$id1 = $_GET['id'];
$sql = "SELECT * FROM incluidos2 WHERE tipo ='Salgados' AND id_evento ='$id' ";
$result = mysql_query($sql) or die ("Erro na consulta");
$count=mysql_num_rows($result);
while($linha=mysql_fetch_array($result)){
$id = $linha['id'];
$nome = $linha['nome'];
$tipo = $linha['tipo'];
$valor = $linha['valor'];
$unid = $linha['unid'];
$foto = $linha['foto'];
?>
<input type="hidden" name="ID" value="<?echo $id?>" />
<input type="text" name="unidade[]" size="2" value="<?echo $unid?>" />
<?}?>
<br />
<input type="submit" value="Registrar" />
<br /><br />
</form>
<?php
if (isset($_POST['ID'])) {
$id = $_POST['ID'];
$sql = "UPDATE incluidos2 SET unid = '$unid' WHERE id = '$id' ";
$result = mysql_query($sql);
if($result){
echo "<meta http-equiv=\"refresh\" content=\"0;URL=editar_incluidos.php\">";
}
}
mysql_close();
?>>
seu id no form não está sendo passado como array
name="ID"
não seria
name="ID[]"
Ola amigo
troquei aqui mais mão funcionou...
>
Você só está passando um Id então você pode fazer assim:
<form method="post">
<?
$id1 = $_GET['id'];
$sql = "SELECT * FROM incluidos2 WHERE tipo ='Salgados' AND id_evento ='$id' ";
$result = mysql_query($sql) or die ("Erro na consulta");
$count=mysql_num_rows($result);
while($linha=mysql_fetch_array($result)){
$id = $linha['id'];
$nome = $linha['nome'];
$tipo = $linha['tipo'];
$valor = $linha['valor'];
$unid = $linha['unid'];
$foto = $linha['foto'];
?>
<input type="hidden" name="ID" value="<?echo $id?>" />
<input type="text" name="unidade[]" size="2" value="<?echo $unid?>" />
<?}?>
<br />
<input type="submit" value="Registrar" />
<br /><br />
</form>
<?php
if (isset($_POST['ID'])) {
$id = $_POST['ID'];
$sql = "UPDATE incluidos2 SET unid = '$unid' WHERE id = '$id' ";
$result = mysql_query($sql);
if($result){
echo "<meta http-equiv=\"refresh\" content=\"0;URL=editar_incluidos.php\">";
}
}
mysql_close();
?>
Ola Amigo Obrigado pela ajuda. teste aqui o seu exemplo mais não editou teria mais alguma ideia?
Ola Amigos
Alguém tem alguma ideia de como posso resolver meu problema?
<input type="hidden" name="ID" value="<?echo $id?>" />
<input type="text" name="unidade[]" size="2" value="<?echo $unid?>" />
faltou ponto e virgula ali no echo
Olá amigo tente usar o seguinte código
>
<form method="post"><? $id = $_GET['id']; $sql = "SELECT * FROM incluidos2 WHERE tipo ='Salgados' AND id_evento ='$id' ";$result = mysql_query($sql) or die ("Erro na consulta");$count=mysql_num_rows($result);while($linha=mysql_fetch_array($result)){$nome = $linha['nome'];$tipo = $linha['tipo'];$valor = $linha['valor'];$unid = $linha['unid'];$foto = $linha['foto'];?> <input type="text" name="unidade[]" size="2" value="<?echo $unid;?>" /> <?}?><br /> <input type="submit" value="Registrar" /><br /><br /></form><?phpif (isset($_POST['ID'])) { $sql = "UPDATE incluidos2 SET unid = '$unid' WHERE id='$id"; $result = mysql_query($sql);if($result){echo "<meta http-equiv=\"refresh\" content=\"0;URL=editar_incluidos.php\">";}}mysql_close();?>
Que no caso não precisará de hidden
>
Olá amigo tente usar o seguinte código
Que no caso não precisará de hidden
Ola Amigo... não funcionou também...
>
<input type="hidden" name="ID" value="<?echo $id?>" />
<input type="text" name="unidade[]" size="2" value="<?echo $unid?>" />
faltou ponto e virgula ali no echo
Testei mais não funcionou
Ola Amigos Ainda não Funcionou ele continua não editando e nenhum erro aparece ...
Então tente esse:
> <?php
$id = $_GET['id'];
$sql = "SELECT * FROM incluidos2 WHERE tipo ='Salgados' AND id_evento ='$id' ";
$result = mysql_query($sql) or die ("Erro na consulta");
$count=mysql_num_rows($result);
while($linha=mysql_fetch_array($result)){
$nome = $linha['nome'];
$tipo = $linha['tipo'];
$valor = $linha['valor'];
$unid = $linha['unid'];
$foto = $linha['foto'];
}
?>
<form method="post">
<input type="text" name="unid" size="2" value="<?echo $unid;?>" />
<br />
<input type="submit" value="Registrar" />
<br /><br />
</form>
<?php
if (isset($_POST['submit'])) {
$unid1 = $_POST['unid'];
$result = mysql_query("UPDATE incluidos2 SET unid = '$unid1' WHERE id='$id");
if($result){
echo "<meta http-equiv=\"refresh\" content=\"0;URL=editar_incluidos.php\">";
}
}
mysql_close();
?>
Eu tive que testar no meu webserver pra ver
>
Então tente esse:
Eu tive que testar no meu webserver pra ver
Ola Amigo Obrigado pela ajuda, mais dessa forma só me retorna um resultado a ser editado da Tabela
/applications/core/interface/imageproxy/imageproxy.php?img=http://dentalsistemas.com.br/img/list.png&key=6a17bc0feaf5ff52dcae2ef54d0cdd9f607f946e000aa2813c750a0782003a33" alt="list.png" /> Preciso que funcione dessa forma, cada campo desse editar em uma linha na tabela
Tipo
id nome unid
01 teste1 20
02 teste2 50
Só não esta editando a unidade
<input type="hidden" name="unidade[][id]" value="<?echo $id; ?>" />
<input type="text" name="unidade[][name]" size="2" value="<?echo $unid; ?>" />
Tente este, você vai ter que usar array multidimensional tanto no id quanto no name para poder manipular.
Ola Pessoal
Em fim consegui fazer funcionar. vou colocar abaixo o código funcionando e testado para que quiser usar
Obrigado a Todos.
<form method="post">
<?
include "config.php";
$id = $_GET['id'];
$sql = "SELECT * FROM incluidos2 WHERE tipo ='Salgados' ";
$result = mysql_query($sql) or die ("Erro na consulta");
$count=mysql_num_rows($result);$id = $linha['id'];
$nome = $linha['nome'];
$tipo = $linha['tipo'];
$valor = $linha['valor'];
$unid = $linha['unid'];
$foto = $linha['foto'];
?>
<input type="hidden" name="id[]" value="<?echo $id?>" />
<?echo $nome?><input type="text" name="unid[]" size="2" value="<?echo $unid?>" /><br />
<?}?>
<br />
<input type="submit" value="Registrar" />
<br /><br />
</form>
<?php
if (isset($_POST['id'])) {
foreach ($_POST['id'] as $key => $value) {
$id = mysql_real_escape_string($value);
$unid = mysql_real_escape_string($_POST['unid'][$key]);
$query = "UPDATE incluidos2 SET unid = '{$unid}' WHERE id = '{$id}'";
mysql_query($query);
if($query){
echo "<meta http-equiv=\"refresh\" content=\"0;URL=teste.php\">";
}
}}
?>
seu id no form não está sendo passado como array
name="ID"
não seria
name="ID[]"