Sign in to follow this  
pcjardim

Problemas Com Edição No Bd

Recommended Posts

estou enfrentando o seguinte problema quando vou editar: tenho o formulário abaixo que me traz os dados do BD:

require_once("config.php"); 
$processo=$_POST['processo'];

//PEGA OS CLASSES, COMARCAS, CARTÓRIOS E PESSOAS
$sql_classe = "SELECT * FROM classes WHERE id_classe <>
(SELECT cod_classe FROM processos WHERE processos.processo='$processo') ORDER BY classe";
$sql_medida = "SELECT * FROM medidas WHERE id_medida <>
(SELECT cod_medida FROM processos WHERE processos.processo='$processo') ORDER BY medida";

$sql_classe = mysql_query($sql_classe);
$row_classe = mysql_num_rows($sql_classe);

$sql_medida = mysql_query($sql_medida);
$row_medida = mysql_num_rows($sql_medida);

$re_nclasse = mysql_query("SELECT classe FROM classes WHERE id_classe =
(SELECT cod_classe FROM processos WHERE processos.processo='$processo');");
while($l = mysql_fetch_array($re_nclasse))
{
$nClasse = $l["classe"];
}

$re_nmedida = mysql_query("SELECT medida FROM medidas WHERE id_medida =
(SELECT cod_medida FROM processos WHERE processos.processo='$processo');");
while($l = mysql_fetch_array($re_nmedida))
{
$nMedida = $l["medida"];
}

<form method="POST" action="altera_processo.php">

<table align="center" border="0" width="60%" cellspacing="0" cellpadding="5" bgcolor="#EAEBEF" bordercolorlight="#FFFFFF" bordercolordark="#E3E5EA">
<td width="32%" align="right">
Processo: </td>
<td width="61%"><label for="processo">
<input id="processo" name="processo" readonly="true" onKeyPress="mascara(this,mprocesso)" maxlength="17" size="15" value="<?echo $processo?>" />
</label>
</td>
</td>
<td width="26%">
</td>
</tr>

<tr>
<td width="32%" align="right">
Classe:
</td>
<td width="42%">
<select name="listClasse" onChange="Dados(this.value);">
<option value="0" style="color:#FF0000" ><? echo $nClasse ?></option>
<? for($i=0; $i<$row_classe; $i++) { ?>
<option value="<? echo mysql_result($sql_classe, $i, "id_classe"); ?>">
<? echo mysql_result($sql_classe, $i, "classe"); ?></option>
<? } ?>
</select>

</td>
<td>
<button type="button" style="color:#000099" onClick="java script:location.href('cad_classe.php')">Cadastrar</button>
</td>
</tr>
<tr>
<td width="32%" align="right">
Medida: </td>
<td width="42%">
<select name="listMedida" onChange="Dados(this.value);">
<option value="0" style="color:#FF0000" ><? echo $nMedida ?></option>
<? for($i=0; $i<$row_medida; $i++) { ?>
<option value="<? echo mysql_result($sql_medida, $i, "id_medida"); ?>">
<? echo mysql_result($sql_medida, $i, "medida"); ?></option>
<? } ?>
</select>
</td>
<td>
<button type="button" style="color:#000099" onClick="java script:location.href('cad_medida.php')">Cadastrar</button>
</td>
</tr>
</form>
[/codebox]

que envia dos dados para:

[codebox]<?
if (getenv("REQUEST_METHOD") == "POST")
{

$processo=$_POST['processo'];
$classe=$_POST['listClasse'];
$medida=$_POST['listMedida'];

if ($processo and $classe)
{
$conexao = mysql_pconnect("localhost","root","paulo");
mysql_select_db("jijuv",$conexao);

$query ="UPDATE processos SET cod_classe='$classe', cod_medida='$medida', WHERE processo='$processo'";
mysql_query($query,$conexao);
} else
{
$err = "Preencha todos os campos!";
}

}
?>

<table align="center" border="0" width="60%" cellspacing="0" cellpadding="5" bgcolor="#EAEBEF" bordercolorlight="#FFFFFF" bordercolordark="#E3E5EA">
<tr>
<td align="center">
<?

echo '<center span class="style2">
<table width="386" align="center"><tr><span class="style1">
CADASTRO ALTERADO COM SUCESSO!!!<br><br>
<b>Processo: </b>'.$processo.'<br>
<b>Classe: </b> '.$classe.'<br>
<b>Medida: </b> '.$medida.'<br>
</span></tr></table>';
?>
</td>
</tr>
</table>
<html>
<head>
<title>
<?=$titulo?>
</title>
<link rel="stylesheet" href="jijuv.css" type="text/css" media="all">
</head>
<body>
<table align="center" border="0" width="60%" cellspacing="0" cellpadding="5" bgcolor="#EAEBEF" bordercolorlight="#FFFFFF" bordercolordark="#E3E5EA">
<tr>
<td align="center">
<button type="button" style="color:#000099" onClick="java script:location.href('consulta_processo.php')">voltar</button>
</td>
</tr>
</table>
</body>
</html>

O problema é o seguinte: se eu altero todos os combos ele grava, porém se altero só um não grava. Alguém poderia me ajudar

Share this post


Link to post
Share on other sites

pelo que vi ele só faz o update se tiver o processo e a classe com valores, se não ele mostra a mensagem

olhe esta parte no que grava

if ($processo and $classe) // aqui voce força a gravar se tiver duas

{

$conexao = mysql_pconnect("localhost","root","paulo");

mysql_select_db("jijuv",$conexao);

$query ="UPDATE processos SET cod_classe='$classe', cod_medida='$medida', WHERE processo='$processo'";

mysql_query($query,$conexao);

} else

{

$err = "Preencha todos os campos!";

}

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this