Удивительно, если кто-то может предложить лучший подход к текущему методу, который у меня есть для интеграции php / js / mysql.
Я использую этот метод просто для возврата данных образца, установки уникального значения и т. Д., И он отлично работает (с различными методами проверки подлинности, чтобы замедлить попытку атаки). Однако я хочу добавить относительно большой объем данных и задаться вопросом, есть ли лучший метод?
В настоящее время я делаю это:
JS
$.ajax( { type : "GET", url : "_dbGetSomeData", dataType : "html", success: function(data) { parseData(data); } });
PHP
<?php include '_common.php'; include '_auth.php'; $INPUT_EMAIL= mysql_real_escape_string($_GET["e"]); $INPUT_FINGERPRINT = $_SESSION[SESH_VAR_NAME]; //--- Do some SQL stuff in the DB ?>
Это отлично подходит для одноразового запроса данных или установки одного значения, но могу ли я использовать этот метод для сохранения большего количества данных? Я действительно не хочу начинать возиться с огромными сообщениями о querystring в PHP-файле _db.
Вот пример того, как вы должны делать запросы Ajax с помощью jQuery / PHP / MySQL
JS
var postData = { first_name: 'Foo', last_name: 'Bar', phone: '1-555-432-1234' }; $.post('path/to/ajax/url.php', postData) .done(function(response) { alert("Data Loaded: " + response); });
PHP
// Connect to MySQL $dbh = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass); // We want do some validation on the data so we can make a function called // `validate()` if you want. $data = validate($_POST); $stmt = $dbh->('INSERT INTO my_table (first_name, last_name, phone) VALUES (:first_name, :last_name, :phone)'); $stmt->execute($data);