CRUD em LARAVEL

Estou com um pouco de dificuldade de fazer um CRUD basico ( até pq me parece que a sintaxe do laravel nesse aspecto é diferente das demais ). Explicando a situação: Eu to fazendo um metodo POST de um HTML para um PHP, esse PHP vai conter o CRUD, mas quando tento executar a função do update ( foi a unica que criei até o momento ) o botão não é ativado.

HTML:

<div class="row">
  <!-- Tabela 2 -->
  <div class="col-md-12 col-sm-12 col-xs-12">
      <div class="x_panel">
          <div class="x_title">
              <h2>Editar Registros</h2>
              <ul class="nav navbar-right panel_toolbox">
                  <li><a class="collapse-link"><i class="fa fa-chevron-up"></i></a></li>
                  <li><a class="close-link"><i class="fa fa-close"></i></a></li>
              </ul>
              <div class="clearfix"></div>
          </div>
          <div class="x_content">

              <table id="datatable-relatorio" class="table">
                  <thead>
                    <form id="editar" action="editar.php" method="post">
                    <tr>
                        <th>ID </th>
                        <th>Nome</th>
                        <th>Telefone</th>
                        <th>Prioridade</th>

                    </tr>
                    </thead>
                    <tbody>
                    <tr>
                      <td><input type="text" name="id"/> </td>
                      <td><input type="text" name="nome"/> </td>
                      <td><input type="text" name="telefone" /> </td>
                      <td><input type="text" name="prioridade" /> </td>

                    </tr>

                  </tbody>
                </form>
              </table>
              <input type="submit" value="Editar" name="editar"/>
          </div>
      </div>
  </div>

E o codigo PHP

 <?php   namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Collection;
use Carbon\Carbon;

class editar extends Controller
{

  public function edit()
   {
     return view('edit');
   }

  public function index(){
    if(isset($_POST["editar"])){
    $id = $_POST["id"];
    $nome = $_POST["nome"];
    $telefone = $_POST["telefone"];
    $prioridade = $_POST["prioridade"];


if($nome == "" || $telefone == "" || $prioridade == ""){
  echo "<script> alert('Preencha os campos corretamente'); </script>";
  return true;
}
$update = DB::table('operadores')
            ->where('id',$id )
            ->update(['telefone' => $telefone]);
            $stmt = $conn->prepare($update);
/* s = string, i = integer, d = double,  b = blob */
$stmt->bind_param('sss', $nome,$telefone,$prioridade);

$stmt->execute();

if (!$stmt->errno)
    echo 'Atualizado {$stmt->affected_rows} registros';
}
return view("dashboard");

  }
}
?>

Se está usando Laravel, mas, fazendo códigos que não precisam? será que é isso a sua duvida?

Então, minha duvida primeiramente é: Como faço um CRUD usando metodo POST? pq pela sintaxe que vi ( que esta aplicada no codigo )

$update = DB::table('operadores')
        ->where('id',$id )
        ->update(['telefone' => $telefone]);
        $stmt = $conn->prepare($update);
/* s = string, i = integer, d = double,  b = blob */
$stmt->bind_param('sss', $nome,$telefone,$prioridade);

$stmt->execute();

if (!$stmt->errno)
echo 'Atualizado {$stmt->affected_rows} registros';
}

é diferente a de escrever ‘‘manualmente’’, oq eu preciso em essência é que eu faça um update de dados que estou passando via um metodo POST.
Vi que o laravel conta com essas ferramentas, sem precisar escrever o codigo na mão, mas não entendi como se aplica elas…

Uma coisa que vc tem que cuidar com o Laravel é em qual versão vc está trabalhando, pois de uma para outra muita coisa muda.
Pelo que pude ver acredito que seu problema esteja na construção do controller, acredito vc esteja utilizando versões atuais do Laravel, então esses dois artigos podem lhe ajudar a aprender:

Utilizo a 5.4, vou dar uma lida nesses artigos,
obrigado!

1 curtida

Cara, dei uma lida nos artigos, consegui aplicar certas coisas, mas não ficaram do jeito que eu quero ainda…
Eu tenho uma page em HTML onde o formulario utiliza o metodo POST para a transmissão de dados. Até atribuir os valores do metodo do HTML com o PHP eu entendi, e creio que consegui fazer. mas minha duvida é, como eu crio o UPDATE desses dados utilizando o laravel… até pq o botão que estou utilizando ‘‘submit’’ não esta submetendo quando tento fazer a validação do mesmo.

1 curtida

Se não está submetendo provavelmente o problema é com a rota

O que lhe aconselho é deixar de lado o seu programa um pouco, pegue um tutorial e siga passo a passo a construção de um crud completo. Durante a construção vc poderá elucidar várias de suas dúvidas e ao final vc pode apenas migrar seu programa para a estrutura do crud que vc acabou de fazer.
As vezes (quase sempre) a melhor solução é construir a estrutura do zero, pois sempre existem detalhes que deixamos passar durante apenas uma leitura ou visualização de códigos de exemplo.

1 curtida

Tranquilo cara, realmente eu não parei pra estudar do jeito que gostaria, como a empresa ta cobrando isso eu to fazendo meio que uma junção de partes, mas vou tirar um tempo pra estudar.
Valeu pela ajuda

@Willian_Lima os links não te ajudaram, ou você ficou com mais duvida!???

Seguinte cara se ta misturando e isso não é legal um CRUD básico é fácil de fazer, me faz o seguinte me mande o Layout da sua tabela para que eu possa te ajudar uma tabela pequena!

Ajudaram sim, mas vou te passar a ideia


Quando clico no EDITAR ele me manda pra pagina do Editar Registros, até ai eu consegui fazer sem problema, eu to com problema no quando carregar o “Editar Registros” os campos virem preenchidos com os dados e consiga editar esses dados no botão que tem ali no ''Editar"