Rodiney 0 Denunciar post Postado Novembro 16, 2007 Tou criando um site onde tem tenho que colocar para atualizar o preço de umgrupo de registros mas eu não sei como eu posso fazer isso pois em média da 50 a 80 registros para ser atualizados num vez só. tem como fazer isso? Obrigado! Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Capella 7 Denunciar post Postado Novembro 16, 2007 da par fazer sim. seu codigo vais er enorme não seria mais simples. dividir seus registros por blocos. para ficar mais limpa e mais organizada a programação. ??? Compartilhar este post Link para o post Compartilhar em outros sites
Rodiney 0 Denunciar post Postado Novembro 16, 2007 Sim, mas o formulário eu já criei! ele exibe os registros com o preço antigo num "text fiel" onde o cliete digita o novo valor ai cliclando em enviar posta para a outra pagina onde seria atualizado no bd mas eu não consigo fazer com que o UPDATE repita para cada registro ou algo parecido, O que eu quero fazer o "loop" Se tiver como fazer isso posta ai Ex: $id=1; $id=2; $id=3; $id=4; $id=5; $vlr=70; $vlr=71; $vlr=72; $vlr=73; $vlr=74; $upd_upd="UPDATE txt SET valor1='$vlr' WHERE id='$id'"; mysql_query($upd_upd); Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Capella 7 Denunciar post Postado Novembro 16, 2007 tenta fazer somando 1 tipo. $var++; no loop. mais achoq ue isso não é viavel o certo seria dividir as informações por blocos. Compartilhar este post Link para o post Compartilhar em outros sites
Rodiney 0 Denunciar post Postado Novembro 16, 2007 Não entendi como eu coloco essa função no codigo!!! Tem como explicar um pouco mais..... Compartilhar este post Link para o post Compartilhar em outros sites
Rodiney 0 Denunciar post Postado Novembro 16, 2007 Não tem como fazer isso? Os valores são enviados de um formulário com sitema POST, como é que eu fasso para que update funcione sendo que vai de uma vez só variso registros...??? Compartilhar este post Link para o post Compartilhar em outros sites
hunternh 2 Denunciar post Postado Novembro 16, 2007 Acho que entendi o que você quer, você tem mais ou menos isso: <input type="checkbox" name="chkId[]" value="12|0"> <label>Novo Valor</label><input type="text" name="txtValor[]"> <input type="checkbox" name="chkId[]" value="15|1"> <label>Novo Valor</label><input type="text" name="txtValor[]"> <input type="checkbox" name="chkId[]" value="20|2"> <label>Novo Valor</label><input type="text" name="txtValor[]"> <input type="checkbox" name="chkId[]" value="21|3"> <label>Novo Valor</label><input type="text" name="txtValor[]"> <input type="checkbox" name="chkId[]" value="31|4"> <label>Novo Valor</label><input type="text" name="txtValor[]"> em relação a isso(value="21|3") 21 representa o id e 3 o indice do campo do valor que será atualizado, ai no php você faz o seguinte: <?php if(isset($_POST['chkId'])) { $ids = $_POST['chkId']; $valores = $_POST['txtValor']; for($i = 0; $i < count($ids); $i++) { $id_indice = explode("|",$ids[$i]); mysql_query("UPDATE txt SET valor=".$valores[$id_indice[1]]." WHERE id=".$id_indice[0]); } } ?> Compartilhar este post Link para o post Compartilhar em outros sites
Rodiney 0 Denunciar post Postado Novembro 17, 2007 Perfeito... nau tenho nem palavras para agradecer.... /tou sendo sincero... Muito Obrigado ficou perfeito... Valeu mesmo.... Compartilhar este post Link para o post Compartilhar em outros sites
Rodiney 0 Denunciar post Postado Novembro 18, 2007 Fera tou com um problema eu joguei no formulário e fiz um "select" que exibe todos os registros mostrando os valores no formulário firz como no script que você me passou mas não ta dando serto já revisei o codigo e não comtem erro.... tem alguma restrição referente ao loop do formulário? ou tem outra forma? Compartilhar este post Link para o post Compartilhar em outros sites
hunternh 2 Denunciar post Postado Novembro 18, 2007 Poste o seu código, para darmos uma olhada, assim só falando fica dificil ajudar. Compartilhar este post Link para o post Compartilhar em outros sites
Rodiney 0 Denunciar post Postado Novembro 19, 2007 Quais as minhas duvidas.... 1º Quando eu fasso o loop do "record set" eu não fasso do formulário somente da tabela em que esta os campos do formulário sendo que neste formulário tera somente um botão de "submit", eu acho que deste jeito não tem como fazer funcionar pq somente um valor será enviado do formulário.... Explicando o codigo: é um formulário post onde exibe a consulta no banco de dados exibindo os valores nele contido um "textfiel", quando é alterado ele envia para o update... no id eu coloquei para ezibir o id do proprio valor e o indice ele pega o valor da id do banco e soma +1 dando o valor do indice.... na verdade o problema é como fazer um loop do form para que ele envie todos os resultados já alterado para o update.... <?php require_once('Connections/Incomar.php'); ?> <?php // AQUI ELE RECEBE O VALOR DO FORMULÁRIO PARA ATUALIZAÇÃO if(isset($_POST['id'])) { $ids = $_POST['id']; $valor1A = $_POST['valor1']; $valor2A = $_POST['valor2']; $valor3A = $_POST['valor3']; $valor4A = $_POST['valor4']; $valor5A = $_POST['valor5']; for($i = 0; $i < count($ids); $i++) { $id_indice = explode("|",$ids[$i]); mysql_query("UPDATE txt SET valor1=".$valor1A[$id_indice[1]]."valor2=".$valor2A[$id_indice[1]]."valor3=".$valor3A[$id_indice[1]]. "valor4=".$valor4A[$id_indice[1]]. "valor5=".$valor5A[$id_indice[1]]. "WHERE id=".$id_indice[0]); } } ?> <?php if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } mysql_select_db($database_Incomar, $Incomar); $query_rs_atualiza = "SELECT * FROM txt WHERE id < 6"; $rs_atualiza = mysql_query($query_rs_atualiza, $Incomar) or die(mysql_error()); $row_rs_atualiza = mysql_fetch_assoc($rs_atualiza); $totalRows_rs_atualiza = mysql_num_rows($rs_atualiza); ?><table width="893" height="86" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="893"><form action="" method="post" enctype="multipart/form-data" name="atualiza" id="atualiza"> <?php do { ?> <table width="891" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="891"><label>Atualiza?: <input name="id[]" type="checkbox" id="id[]" value="<?php echo $row_rs_atualiza['id']; ?>|<?php $calc1= $row_rs_atualiza['id']; $calc2=$calc1+$row_rs_atualiza['id']; echo $calc2; ?>"> Valor01 <input name="valor1[]" type="text" id="valor1[]" value="<?php echo $row_rs_atualiza['valor1']; ?>" size="10"> Valor2: <input name="valor2[]" type="text" id="valor2[]" value="<?php echo $row_rs_atualiza['valor2']; ?>" size="10"> Valor3: <input name="valor3[]" type="text" id="valor3[]" value="<?php echo $row_rs_atualiza['valor3']; ?>" size="10"> Valor4: <input name="valor4[]" type="text" id="valor4[]" value="<?php echo $row_rs_atualiza['valor4']; ?>" size="10"> Valor5: <input name="valor5[]" type="text" id="valor5[]" value="<?php echo $row_rs_atualiza['valor5']; ?>" size="10"> </label></td> </tr> </table> <?php } while ($row_rs_atualiza = mysql_fetch_assoc($rs_atualiza)); ?><table width="164" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td><label> <div align="center"> <input type="submit" name="Submit" value="Atualiza"> </div> </label></td> </tr> </table> </form> </td> </tr> </table> <?php mysql_free_result($rs_atualiza); ?> Compartilhar este post Link para o post Compartilhar em outros sites
Rodiney 0 Denunciar post Postado Novembro 19, 2007 Humternh: você condeguiu dar uma olhada no codigo que eu postei???? alguma duvida? Posta ai qualquer duvida que tiver ou se achar alguma coisa que possa me dar uma luzzz... Valeu!!! Compartilhar este post Link para o post Compartilhar em outros sites
hunternh 2 Denunciar post Postado Novembro 19, 2007 Pelo que andei vendo, você tem mais de um valor por id é isso? Compartilhar este post Link para o post Compartilhar em outros sites
Rodiney 0 Denunciar post Postado Novembro 20, 2007 Sim são 5 valores!!! Eu textei o codigo que você me passou, com mais de um valor por id funcionou perfeitamente...Mas com os "textfiel" 'fixos' ou seja não é feito o loop dos valores do banco exibindo todos os valores sendo que fica um formulários e varios registros para serem envidos.. Compartilhar este post Link para o post Compartilhar em outros sites
hunternh 2 Denunciar post Postado Novembro 22, 2007 Acho que é isso, tem que testar: <?php require_once('Connections/Incomar.php'); // AQUI ELE RECEBE O VALOR DO FORMULÁRIO PARA ATUALIZAÇÃO if(isset($_POST['id'])) { $ids = $_POST['id']; $valor1A = $_POST['valor1']; $valor2A = $_POST['valor2']; $valor3A = $_POST['valor3']; $valor4A = $_POST['valor4']; $valor5A = $_POST['valor5']; for($i = 0; $i < count($ids); $i++) { $id_indice = explode("|",$ids[$i]); mysql_query("UPDATE txt SET valor1=".$valor1A[$id_indice[1]]."valor2=".$valor2A[$id_indice[1]]."valor3=".$valor3A[$id_indice[1]]. "valor4=".$valor4A[$id_indice[1]]. "valor5=".$valor5A[$id_indice[1]]. "WHERE id=".$id_indice[0]); } } ?> <?php if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } mysql_select_db($database_Incomar, $Incomar); $query_rs_atualiza = "SELECT * FROM txt WHERE id < 6"; $rs_atualiza = mysql_query($query_rs_atualiza, $Incomar) or die(mysql_error()); $row_rs_atualiza = mysql_fetch_assoc($rs_atualiza); $totalRows_rs_atualiza = mysql_num_rows($rs_atualiza); ?> <table width="893" height="86" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="893"><form action="" method="post" enctype="multipart/form-data" name="atualiza" id="atualiza"> <?php $idx = 0; do { ?> <table width="891" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="891"><label>Atualiza?: <input name="id[]" type="checkbox" id="id[]" value="<?php echo $row_rs_atualiza['id'].'|'.$idx; ?>"> Valor01 <input name="valor1[]" type="text" id="valor1_<?php echo $idx;?>" value="<?php echo $row_rs_atualiza['valor1']; ?>" size="10"> Valor2: <input name="valor2[]" type="text" id="valor2_<?php echo $idx;?>" value="<?php echo $row_rs_atualiza['valor2']; ?>" size="10"> Valor3: <input name="valor3[]" type="text" id="valor3_<?php echo $idx;?>" value="<?php echo $row_rs_atualiza['valor3']; ?>" size="10"> Valor4: <input name="valor4[]" type="text" id="valor4_<?php echo $idx;?>" value="<?php echo $row_rs_atualiza['valor4']; ?>" size="10"> Valor5: <input name="valor5[]" type="text" id="valor5_<?php echo $idx;?>" value="<?php echo $row_rs_atualiza['valor5']; ?>" size="10"> </label></td> </tr> </table> <?php } while ($row_rs_atualiza = mysql_fetch_assoc($rs_atualiza)); ?><table width="164" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td><label> <div align="center"> <input type="submit" name="Submit" value="Atualiza"> </div> </label></td> </tr> </table> </form> </td> </tr> </table> <?php mysql_free_result($rs_atualiza); ?> Ps.: repare na variável $idx que eu coloquei Compartilhar este post Link para o post Compartilhar em outros sites