PHP Ошибка, введя данные MYSQL

Хорошие, я пробую вводить данные в мои подмостки mysql, но у меня есть проблемы, чтобы это вводить.

Оказывается, что я хочу ввести мои данные в этих двух подмостках:

introducir la descripción de la imagen aquí

Это код моего формуляра mantenimiento_empleado.php:

<form action="php/registrar_empleado.php" method="POST" enctype="multipart/form-data">

              <div class="row">

                <div class="form-group col-sm-4">
                  <label for="idnombre">Nombre:</label>
                  <input type="text" REQUIRED class="form-control" id="idnombre" name="txtnombre" placeholder="Ingresar Nombre">
                </div>

                <div class="form-group col-sm-8">
                  <label for="idapellido">Apellidos:</label>
                  <input type="text" REQUIRED class="form-control" id="idapellido" name="txtapellidos"  placeholder="Ingresar Apellidos">
                </div>

              </div>


              <div class="row">

                <div class="form-group col-sm-3">
                  <label for="iddni">DNI:</label>
                  <input type="text" REQUIRED class="form-control" id="iddni"  name="txtdni"  placeholder="Ingresar DNI">
                </div>


                <div class="form-group col-sm-3">
                  <label for="idcelular">Telf/Cel:</label>
                  <input type="text" REQUIRED class="form-control" id="idcelular" name="txtcelular" placeholder="Ingresar Telf/Cel">
                </div>

                <div class="form-group col-sm-3">
                  <label for="idemail">E-mail:</label>
                  <input type="email" REQUIRED class="form-control" id="idemail" name="txtemail" placeholder="Ingresar Email">
                </div>

              </div>

              <div class="row">

                <div class="form-group col-sm-4">
                  <label for="idubicacion">Usuario:</label>
                  <input type="text" REQUIRED class="form-control" id="idubicacion" name="txtusuario" placeholder="Ingresar Ususario del Empleado">
                </div>

                <div class="form-group col-sm-4">
                  <label for="idubicacion">Contraseña:</label>
                  <input type="text" REQUIRED class="form-control" id="idubicacion" name="txtcontraseña" placeholder="Ingresar Contraseña">
                </div>

                <div class="form-group col-sm-2">
                  <label for="sel1">Estado:</label>
                  <select class="form-control" name="txtestado" id="sel1">
                    <option value="Activo">Activo</option>
                    <option value="Inactivo">Inactivo</option>
                  </select>
                </div>

                <div class="form-group col-sm-2">
                  <label for="sel1">Tipo:</label>
                  <select class="form-control" name="txttipo" id="sel1">
                    <option value="Vendedor">Vendedor</option>
                    <option value="Almacenero">Almacenero</option>
                  </select>
                </div>

              </div>

              <div class="row">

                <div class="form-group col-sm-4">
                  <label for="idubicacion">Ubicacion:</label>
                  <input type="text" REQUIRED class="form-control" name="txtubicacion" id="idubicacion" placeholder="Ingresar Ubicacion">
                </div>

                <div class="form-group col-sm-4">
                  <label for="exampleInputFile">Subir Foto:</label>
                  <input type="file" name="imgempleado" id="exampleInputFile">
                </div>

              </div>

          <button type="submit" name="submit" class="btn btn-primary">Registrar</button>
          <button type="button" class="btn btn-default">Cancelar</button>
      </form>

И это код, с которым я ввожу мои данные registrar_empleado.php:

<?php
require_once("conexion.php"); 

if (isset($_POST['submit'])) {
    # code...
    $nombre=$_POST["txtnombre"];
    $apellidos=$_POST["txtapellidos"];
    $dni=$_POST["txtdni"];
    $telf=$_POST["txtcelular"];
    $email=$_POST["txtemail"];
    $usuario=$_POST["txtusuario"];
    $contraseña=$_POST["txtcontraseña"];
    $estado=$_POST["txtestado"];
    $tipo=$_POST["txttipo"];
    $ubicacion=$_POST["txtubicacion"];
    $fecha_registro = date('Y-m-d H:i:s');

    $imagen=$_FILES['imgempleado']['name'];
    $ruta=$_FILES['imgempleado']['tmp_name'];
    $destino='fotos/'.$imagen;
    copy($ruta, $destino);



$sql = "INSERT INTO empleado ( nombre, apellidos, tipo, dni, ubicacion, telfmovil, email, imagen, fecha_registro)
VALUES ('$nombre', '$apellidos', '$tipo','$dni', '$ubicacion','$telf', '$email', '$destino','$fecha_registro')";



if ($conn->query($sql) === TRUE) {


$sql2="INSERT INTO usuario (usuario, contraseña, estado) VALUES ( '$usuario', '$contraseña', '$estado')";

if ($conn->query($sql2)==TRUE) {
    echo "New record created successfully";
}else{
     echo "Error: " . $sql2 . "<br>" . $conn->error;
}



} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

$conn->close();


}


?>

Но в момент регистрирования данных, у меня появляется следующая ошибка:

Error: INSERT INTO usuario (usuario, contraseña, estado) VALUES ( 'admin', '123', 'Inactivo')
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '�a, estado) VALUES ( 'admin', '123', 'Inactivo')' at line 1

И не, как решение этого. Я думаю, что возможно представляет эту ошибку из-за чужеземного ключа id_empleado, который я игнорирую. И не, который делать с нею. Так что, если кто-то знает, как решать это, он был бы благодарен много за помощь.

-1
задан 15.06.2017, 21:29
1 ответ

ошибка я думаю, что это у тебя есть здесь:

$sql2="INSERT INTO usuario (usuario, contraseña, estado) VALUES ( '$usuario', '$contraseña', '$estado')";

ты Был бы должен менять поле contraseГ±a на пароль или password, Г± - та, которая дает ошибку

2
ответ дан 24.11.2019, 14:06
  • 1
    И чтобы увеличивать поле чужеземного ключа (id_empleado)? Он думал, что с первым inserci и # 243; n чужеземное поле производилось autom и # 225; ticamente, но в таблице пользователь, поле хранит со стоимостью 0, когда быть должным, и # 237; когда его быть 1 id_empleado. – Raphael 21.06.2016, 10:20
  • 2
    Это у тебя есть как autoincrement? –  21.06.2016, 10:21
  • 3
    Я делаю это таким: $idEmpleado = $conn->insert_id; $sql2="INSERT INTO usuario (id_empleado, usuario, contraseña, estado) VALUES ( '$idEmpleado', '$usuario', '$contraseña', '$estado')";, быть, если оно так функционирует –  21.06.2016, 10:23
  • 4
    id_empleado таблицы, использованный если. – Raphael 21.06.2016, 10:24
  • 5
    я sirvi и # 243; тысячи спасибо. – Raphael 21.06.2016, 10:31