首页 > 解决方案 > 问题:SQLSTATE [42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误

问题描述

SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,以获取正确的语法,以便在 'desc, type , created_at) VALUES ('dfgsdg', 'IRR', '1', '3456346', 'sdgsdgdsg...' at line 1

我的表格:

<form method="post" action="http://localhost/windocs/billing/store">
<div class="form-group row">
    <label class="col-sm-2 col-form-label">Title Of billing</label>
    <div class="col-sm-10">
        <input autocomplete="off" type="text" id="name" name="name" class="form-control">
    </div>
</div>


<div class="form-group row">
    <label class="col-sm-2 col-form-label">Currency</label>
    <div class="col-sm-10">
        <select name="currency" id="currency" class="form-control">
        <option value="IRR">IRR - iranian rial</option>
        <option value="Dollar">Dollar - united states dollar</option>
        <option value="Euro">Euro - European euro</option>
        </select>
    </div>
</div>
<input type="hidden" name="owner_id" value="<?php echo $_SESSION['user_id']; ?>">
<input type="hidden" name="module_id" value="<?php echo $_SESSION['module_id']; ?>">

<div class="form-group row">
    <label class="col-sm-2 col-form-label">Amount price Of billing</label>
    <div class="col-sm-10">
        <input autocomplete="off" type="number" id="price" name="price" class="form-control">
    </div>
</div>
<div class="form-group row">
    <label class="col-sm-2 col-form-label">Desc Of billing</label>
    <div class="col-sm-10">
        <textarea name="desc" id="desc" rows="4" cols="70"></textarea>
    </div>
</div>
<div class="form-group row">
    <label class="col-sm-2 col-form-label">Type</label>
    <div class="col-sm-10">
        <select name="type" id="type" class="form-control">
        <option value="income">income</option>
        <option value="cost">cost</option>
        <option value="deleted-income">deleted-income</option>
        <option value="deleted-cost">deleted-cost</option>
        </select>
    </div>
</div>

操作页面

public function store($request)
{
    $request['name']  = preg_replace("/[^a-zA-Z 0-9الف-ی]+/", "_", $request['name']);
    $_SESSION['menu']="Billing";
    $db= new DataBase();
    $db->insert('billing',array_keys(array_filter($request)) , array_filter( $request));
    //$this->redirect('billing');
}

标签: phpmysql

解决方案


推荐阅读