Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Data httppost cepat tidak dimasukkan ke database MySQL

Jika meminta server hanya menggemakan permintaan berfungsi, maka masalahnya ada di dalam server, bukan kode klien. Saya akan menyarankan menambahkan beberapa penanganan kesalahan dalam kode PHP:

<?php

// specify that this will return JSON

header('Content-type: application/json');

// open database

$con = mysqli_connect("localhost","user","password","notify");

// Check connection

if (mysqli_connect_errno()) {
    echo json_encode(array("success" => false, "message" => mysqli_connect_error(), "sqlerrno" => mysqli_connect_errno()));
    exit;
}

// get the parameters

$field1 = mysqli_real_escape_string($con, $_REQUEST["firstName"]);
$field2 = mysqli_real_escape_string($con, $_REQUEST["lastName"]);

// perform the insert

$sql = "INSERT INTO user (first_name, last_name) VALUES ('{$field1}', '{$field2}')";

if (!mysqli_query($con, $sql)) {
    $response = array("success" => false, "message" => mysqli_error($con), "sqlerrno" => mysqli_errno($con), "sqlstate" => mysqli_sqlstate($con));
} else {
    $response = array("success" => true);
}

echo json_encode($response);

mysqli_close($con);

?>

Catatan:

  1. Saya tidak akan merekomendasikan masuk sebagai root .

  2. Pastikan Anda menggunakan mysqli_real_escape_string untuk melindungi diri Anda dari serangan injeksi SQL (lihat poin 1).

  3. Saya tidak tahu apakah user Anda tabel memiliki bidang lain di dalamnya, tetapi jika demikian, Anda mungkin ingin menentukan nama kolom di insert penyataan. Bahkan jika Anda hanya memiliki dua kolom tersebut, ini adalah cara yang baik untuk "membuktikan masa depan" kode Anda.

  4. Catatan, saya telah mengubah ini untuk menghasilkan respons JSON. Saya melakukannya karena memudahkan kode klien untuk menguraikan dan menangani respons. Saya akan meninggalkan NSJSONSerialization untuk Anda.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara tercepat untuk menyisipkan objek jika tidak ada dengan SQLAlchemy

  2. Migrasi SQL Server 2008 R2 ke MySQL

  3. Bagaimana cara memesan dengan maksimal dua kolom yang bisa nol di MySQL?

  4. ClassNotFoundException saat menghubungkan ke Mysql dengan JDBC

  5. Permintaan MySQL berfungsi di phpmyadmin tetapi tidak di php