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

Ajuda Com Select + $_POST


StoreDev

Pergunta

Olá, estou criando um painel a qual eu carrego de uma Select os valores e salvo em SQL, porém, por algum motivo o método POST não está retornando os valores da SELECT, antigamente eu conseguia criar, porém, com um tempo parado, não estou conseguindo, criei códigos de testes para verificar o que o POST está retornando, e infelizmente, não retorna a SELECT, somente as INPUTS, segue abaixo o código completo.

 

<?php 
    require_once "class/Session.class.php";
    require_once "class/Auth.class.php";
    $auth = new Auth();
    $session = new Session();
    if(!$session->check()){
        @header('Location: index');
    }
    if(!isset($_GET['id']) || empty($_GET['id'])){
        @header('Location: users');
    }
    $id = (int)trim($_GET['id']);
    if(isset($_GET['delete'])){//check if
        if($session->check()){
            if($auth->isAdmin($session->getUser())){
                $sql = $auth->connection->prepare("SELECT * FROM users WHERE id=?;");
                $sql->execute(array($id));
                $d = $sql->fetch(PDO::FETCH_ASSOC);
                $nome = $d['user'];
                $sql = $auth->connection->prepare("DELETE FROM users WHERE id=?;");
                $sql->execute(array($id));
                print "<script>alert('Cliente: $nome foi deletado com sucesso.')</script>";
                print "<meta http-equiv=\"refresh\" content=\"0;url=users.php\">";
                die();
            }else{
                @header('Location: index');
            }
        }else{
            @header('Location: index');
        }
    }
    if(isset($_POST['senha']) && !empty($_POST['senha'])) {//Check if senha is set and isn't empty
        if($session->check()){//check if is logged
            if($auth->isAdmin($session->getUser())){//get username saved on hashedsession is admin
                $pass = (String)trim($_POST['senha']);//get new password
                $auth->changePass($id,$pass);//change password of User by ID
                print "<script>alert('Senha alterada com Sucesso.')</script>";//Print Success Message
            }else{
                @header('Location: index');
            }
        }else{
            @header('Location: index');
        }
    }
    if(isset($_POST['update'])){
        $body = "";
        foreach ($_POST as $key => $value){
            $body .= $key . ' -> ' . $value . '<br/>';
        }
        $ip = (String)trim($_POST['ip']);
        $porta = (int)trim($_POST['porta']);
        //$plugins = $_POST['listaPlugins']; //Quando tentei Pegar não retorna.
        echo $body;//Função criada para printar os valores que estão vindo no $_POST, únicos valores que estão retornando são IP e PORTA
        die();//Dando DIE somente para testar e ver o echo $body;
    }
        
    $sql = $auth->connection->prepare("SELECT * FROM users WHERE id=?;");
    $sql->execute(array($id));
    if($sql->rowCount() > 0){
        $dados = $sql->fetch(PDO::FETCH_ASSOC);
        $id = $dados['id'];
        $nome = $dados['user'];
        $ip = $dados['ip'];
        $porta = $dados['port'];
        $plugins = explode(" ",$dados['plugin']);
    }else{
        @header('Location: users');
    }
?>

<!DOCTYPE html>
<html class='no-js' lang='en'>
  <head>
    <meta charset='utf-8'>
    <meta content='IE=edge,chrome=1' http-equiv='X-UA-Compatible'>
    <title>Licenças | Lab</title>
    <meta content='' name='author'>
    <meta content='' name='description'>
    <meta content='' name='keywords'>
    <link href="assets/stylesheets/application-a07755f5.css" rel="stylesheet" type="text/css" />
    <link href="//netdna.bootstrapcdn.com/font-awesome/3.2.0/css/font-awesome.min.css" rel="stylesheet" type="text/css" />
    <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
    <link href="assets/images/favicon.ico" rel="icon" type="image/ico" />
    
  </head>
  <body class='main page'>
    <!-- Navbar -->
    <?php include "@include_head.php"; ?>
      <!-- Tools -->
      <section id='tools'>
        <ul class='breadcrumb' id='breadcrumb'>
          <li class='title'>Administrativo</li>
          <li>Clientes</li>
          <li><?php echo $nome;?></li>
        </ul>
        <div id='toolbar'>
            <div class='btn-group'>
                <a class='btn' data-toggle='toolbar-tooltip' href='#' title='Alterar Senha de <?php echo $nome;?> ' onclick="return changePassWord();">
                    <i class='icon-building'></i>
                </a>
            </div>
        </div>
      </section>
      <!-- Content -->
      <div id='content'>
        <div class='panel panel-default'>
          <div class='panel-heading'>
            <i class='icon-edit icon-large'></i>
            Licenses
          </div>
          <div class='panel-body'>
            <form method="POST" action="?id=<?php echo $id;?>">
              <fieldset>
                <legend>Dados</legend>
                <div class='form-group'>
                  <label class='control-label'>IP</label>
                  <input class='form-control' name="ip" data-toggle='tooltip' value="<?php echo $ip;?>" title='IP da máquina onde a licença está ativa.'>
                </div>
                <div class='form-group'>
                  <label class='control-label'>Porta</label>
                  <input class='form-control' name="porta" data-toggle='tooltip' value="<?php echo $porta;?>" title='Porta do servidor onde a licença está ativa.'>
                </div>
              </fieldset>
              <fieldset>
                <legend>Plugins</legend>
                <div class='form-group'>
                  <label class='control-label'>Plugins</label>
                  <select class='form-control' id="select" name="listaPlugins" multiple size="10"><!-- Já tentei setar o attributo name como array (name="listaPlugins[]") e também alterar o nome-->
                    <?php
                        if($plugins != null){
                            foreach($plugins as $t){
                                print "<option value=\"$t\">$t</option>";
                            }
                        }
                    ?>
                  </select>
                  <br/>
                  <input class="form-control" id="addPlugin">
                  <button class="btn btn-default" onclick="return addOnList();">Adicionar Plugin</button>
                  <button class="btn btn-default" onclick="return removeSelected();">Deletar Plugin Selecionado</button>
                </div>
              </fieldset>
              <div class='form-actions'>
                <button class='btn btn-default' name="update" >Salvar Edições</button>
              </div>
            </form>
            <form action="?id=<?php echo $id;?>" method="POST" id="ksks" name="alterarSenha">
                <input id="senha" name="senha" type="hidden">
            </form>
          </div>
        </div>
      </div>
    </div>
    <!-- Footer -->
    <!-- Javascripts -->
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js" type="text/javascript"></script><script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js" type="text/javascript"></script><script src="//cdnjs.cloudflare.com/ajax/libs/modernizr/2.6.2/modernizr.min.js" type="text/javascript"></script><script src="assets/javascripts/application-985b892b.js" type="text/javascript"></script>
    
    <script>
        var select = document.getElementById('select');
        function removeSelected(){
            select.remove(select.selectedIndex);
            return false;
        }
        function addOnList(){
            var input = document.getElementById('addPlugin').value;
            if(input == ""){
                return false;
            }
            var option = document.createElement("option");
            option.text = input;
            option.value = input;
            select.add(option);
            document.getElementById('addPlugin').value = "";
            return false;
        }
        function changePassWord(){
            var input = prompt("Digite a Nova Senha para o Usuário <?php echo $nome;?>");
            if(input != null && input != ""){
                document.getElementById("senha").value = input;
                document.getElementById("ksks").submit();
                return true;
            }
            return false;
        }
    </script>
  </body>
</html>



 

Editado por StoreDev
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...