Jump to content
Fórum Script Brasil
  • 0

Método genérico


MTavares

Question

Caros colegas,

eu tenho um método, que mtos chamam de genéricos, do qual faz a alteração de um determinado dado. Só que ao terminar de desenvolver esse método, me deparei com um obstáculo, quando o texto, por ex, tem vírgula, ele interpreta como mais um campo e dá erro. veja abaixo o método:

public function alterarDADOS($tabela,$camposbd,$camposformulario,$idwhere,$id,$Pag){
          
          $this->tabela = $tabela;
          $this->camposbd = $camposbd;
          $this->camposformulario = $camposformulario;
          $this->id = $id;
                  
          $camposimplode = @implode(",",$this->camposformulario);
          $campos = explode(",",$this->camposformulario);
          
          $camposbd = @implode(",",$this->camposbd);
          $camposbdnovo = explode(",",$this->camposbd);
         
          $up = "UPDATE " .$tabela. " SET ";
          
          $i = 0;
                  
          while(list(,$valor) = each($campos)){
               
              if($i > 0){   
                       $up .= ", ";
                     }
                       $up .= $camposbdnovo[$i] . " = '" .$valor. "'";
                       $i++;
          }
          $up .= " WHERE " .$idwhere. " = " .$id;   
          $sql = mysql_query($up);

          try{
              if(mysql_affected_rows() > 0){
                          return $this->sucesso("alterar",$id,$Pag);
                      }else{
                throw new Exception($this->erro($Pag));
              }
           }catch(Exception $erro){
                 return $erro->getMessage();
          }
      }

Alguém poderia me ajudar a achar uma solução para isso?

abraços e obrigado

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

MTavares... isso acontece por que no explode... você passa a virgula como condição para quebra..

o ideal seria você não usar virgula para separar os campos que essa função recebe..

tenta usar + por exemplo, dai é só trocar nas chamadas do metodo explode por +.

Link to comment
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
Answer this question...

×   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.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...