Ir para conteúdo
Fórum Script Brasil
  • 0

Atualização múltipla


Frank K Hosaka

Pergunta

Ontem eu encontrei o Biehl no fórum do iMasters, e ele perguntou para a plateia como fazer atualização múltipla. Ele queria mudar a cor verde para o vermelho e o azul para amarelo.

Como eu sou bastante bitolado, eu logo queria responder que isso é impossível, que o MySQL foi projetado para fazer uma atualização de cada vez. O Google mostrou para mim que eu estava bastante errado:

<?php
// tb_aprendiz(id,cor)(1,vermelho)(2,amarelo)
if(isset($_GET['cor'])){
    $cor=$_GET['cor'];
    $cor1velho=$cor[0];$cor1novo=$cor[1];
    $cor2velho=$cor[2];$cor2novo=$cor[3];
    $mysqli=new mysqli("localhost","root","","laravel");
    $query=$mysqli->query("update tab_aprendiz set cor = case cor when 
    '$cor1velho' then '$cor1novo' when '$cor2velho' then '$cor2novo' else cor end");} ?> 
<form>
<table><th>Cor Antiga<th>Cor Nova
<tr><td><input name=cor[] required><td><input name=cor[] required>
<tr><td><input name=cor[] required><td><input name=cor[] required>
<tr><td><input type=submit>
</form> 

 

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

O Biehl não gostou da minha solução. Ele queria que eu usasse uma caixa <select> ao invés de quatro <input>. Assim, usei o meu famoso método científico da tentativa e erro para ver se eu consigo agradar o Biehl, mas desconfio que não vou conseguir. Mas, pelo menos, eu aprendo um pouco mais.

<?php
//tab_aprendiz(id,ref,cores)(1,555,verde)(2,555,azul) id=chave primária, auto-incrementa
if (isset($_POST['enviar'])){
    $conexaoBD=new mysqli("localhost","root","","laravel");
    $cores=json_decode($_POST['cores']);
    $corprocurada=$cores[0];
    $coralterada=$cores[1];
    $sql="UPDATE tab_aprendiz SET cores='$coralterada' WHERE cores='$corprocurada'";
    mysqli_query($conexaoBD,$sql);
    var_dump(mysqli_fetch_all(mysqli_query($conexaoBD,"select * from tab_aprendiz")));}
?>
<form method=post>
  <select name=cores multiple size=4>       
  <option value='["verde","vermelho"]'>verde->vermelho</option>
  <option value='["azul","amarelo"]'>azul->amarelo</option>
  <option value='["vermelho","verde"]'>vermelho->verde</option>
  <option value='["amarelo","azul"]'>amarelo->azul</option>
  </select>
  <input type="submit" name="enviar" value="Salvar">
</form>

 

Editado por Frank K Hosaka
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...