6
respostas

Erro na entrada de Dados

Gostaria que no formulário de OS ao clicar no nome buscar ele me levar até a lista de clientes, e ao clicar no botão carregar ele me devolvesse o nome do cliente dentro do campo cliente_id da ordem de serviço.

são duas tabela no banco a de clientes e a de OS

Algém me ajuda

OS

<?php
include("conexao.php");
include("funcao.php");

//$id = $_GET['id'];
//$cliente = buscarCliente($conexao, $id);
?>

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Ordem de serviço</title>
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
</head>

<body>
<h1 class="text-center">Ordem de serviço</h1>
    <div class="container">
        <form action="adicionaOs.php" method="post">
            <label class="form-group">Cliente</label>
            <input class="form-control" name="cliente_id" type="text" value="<?=$cliente['nome']?>"><br/>
            <td><a class="btn btn-primary"href="listar-clientes.php"><span class="glyphicon glyphicon-pencil"></span>Buscar CLiente</a>
            </td>
            <br/>
            <label class="form-group">Serviço</label>
            <input class="form-control" name="nome" type="text">
            <br/>
            <label class="form-group">preco</label>
            <input class="form-control" name="preco" type="number">
            <br/>
            <button class="btn btn-default" type="submit">SALVAR</button>
        </form>
    </div>
</body>
</html>

Lista de Clientes

<?php
include('conexao.php');
include('funcao.php');
?>


<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Lista de Clkientes</title>
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
</head>

<body>
<h1 class="text-center">Lista de Clientes</h1>

<div class="table table-responsive">
    <table class="table">
        <thead class="thead-inverse">
            <tr>
                <th>Nome</th>
                <th>Email</th>
            </tr>
        </thead>
        <?php $clientes = listarClientes($conexao); 
        foreach($clientes as $cliente) :
        ?>
        <tr>
            <td><?=$cliente['nome']?></td>
            <td><?=$cliente['email']?></td>

            <td><a class="btn btn-primary"href="altera-formulario-cliente.php?id=<?=$cliente['id']?>"><span class="glyphicon glyphicon-pencil"></span>Editar</a>
            </td>

            <td><a class="btn btn-success"href="altera-formulario-cliente.php?id=<?=$cliente['id']?>"><span class="glyphicon glyphicon-download"></span>Carregar</a>
            </td>
        </tr>
        <?php
        endforeach // fechar o foreach
    ?>
    </table>
</div>

</body>
</html>

6 respostas

Oi Tacio, tudo bom?

Pelo o que eu entendi você quer duas funcionalidades diferentes para cada botão, certo?

Tenta começar alterando aqui:

 <td><a class="btn btn-primary"href="altera-formulario-cliente.php?id=<?=$cliente['id']?>"><span class="glyphicon glyphicon-pencil"></span>Editar</a>
            </td>

            <td><a class="btn btn-success"href="altera-formulario-cliente.php?id=<?=$cliente['id']?>"><span class="glyphicon glyphicon-download"></span>Carregar</a>
            </td>

Repara os dois botões tem o mesmo valor em

href="altera-formulario-cliente.php?id=<?=$cliente['id']?>"

Tenta criar um script php diferente pra cada um, assim você consegue tratar cada um do seu jeito especifico =)

Abraço!

Oi Tacio, no seu título do tópico você fala de erro na entrada de dados, que erro está acontecendo? O que acontece quando você tenta fazer o que pretende?

Ola Wanderson, minha intenção é que quando eu clicar no botão carregar que está na lista de clientes ele devolva dentro do meu input cliente_id da pagina ordem_de_serviço o nome do cliente

Obs. Tabela OS e Tabela Clientes do mesmo banco

insira seu código aqui

Tácio, o problema foi resolvido? Você testou a solução do André?

estava ausente mais irei testar hoje Wanderson, obrigado pela atenção

Wanderson Macêdo , Tenho agora os seguintes códigos

O formulario da OS

<?php
include("conexao.php");
include("funcao.php");

$id = $_GET['id'];
$cliente = buscarCliente($conexao, $id);
?>

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Ordem de serviço</title>
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
</head>

<body>
<h1 class="text-center">Ordem de serviço</h1>
    <div class="container">
        <form action="adicionaOs.php" method="post">
            <label class="form-group">Cliente</label>
            <input class="form-control" name="nome" type="text" value="<?=$cliente['nome']?>"><br/>
            <td><a class="btn btn-primary"href="listar-clientes.php"><span class="glyphicon glyphicon-pencil"></span>Buscar CLiente</a>
            </td>
            <br/>
            <label class="form-group">Serviço</label>
            <input class="form-control" name="nome" type="text">
            <br/>
            <label class="form-group">preco</label>
            <input class="form-control" name="preco" type="number">
            <br/>
            <button class="btn btn-default" type="submit">SALVAR</button>
        </form>
    </div>
</body>
</html>

a lista de cliente

<?php
include('conexao.php');
include('funcao.php');
?>


<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Lista de Clkientes</title>
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
</head>

<body>
<h1 class="text-center">Lista de Clientes</h1>

<div class="table table-responsive">
    <table class="table">
        <thead class="thead-inverse">
            <tr>
                <th>Nome</th>
                <th>Email</th>
            </tr>
        </thead>
        <?php $clientes = listarClientes($conexao); 
        foreach($clientes as $cliente) :
        ?>
        <tr>
            <td><?=$cliente['nome']?></td>
            <td><?=$cliente['email']?></td>

            <td><a class="btn btn-primary"href="altera-formulario-cliente.php?id=<?=$cliente['id']?>"><span class="glyphicon glyphicon-pencil"></span>Editar</a>
            </td>

            <td><a class="btn btn-success" href="ordem_de_servico.php?cliente_id<?=$cliente['id']?>"><span class="glyphicon glyphicon-download"></span>Carregar</a>
            </td>
        </tr>
        <?php
        endforeach // fechar o foreach
    ?>
    </table>
</div>

</body>
</html>

E minha função que busca o cliente

ifunction buscarCliente($conexao, $id) {
    $query = "select * from clientes where id = {$id}";
    $resultado = mysqli_query($conexao, $query);
    return mysqli_fetch_assoc($resultado);
}

O meu botão "Busca CLiente" me leva até a lista de clientes, até aqui ta funcionando beleza. Mais o que quero é que ao clicar no Botão "Carregar" ele me entregue dentro no input Cliente que fica no formulario de ordem de serviço, o nome do meu cliente selecionado. só que quando faço isso ele me da os seguintes erros

Obs. no banco de dados tem duas tabelas Cliente e Ordem de serviço, está armazenando os dados beleza

Notice: Undefined index: id in C:\xampp\htdocs\operacoes\ordem_de_servico.php on line 5

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\operacoes\funcao.php on line 40

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software