У меня есть форма HTML / PHP, которая использует функцию JAVA SCRIPT для отправки (POST) входного содержимого в код PHP, который выполняет запрос и возвращается к функции JAVA SCRIPT с данными для автоматического заполнения дополнительных входов в форме.
Все это прекрасно работает , когда отправляемое мной содержимое представляет собой простой текст, даже если в содержимом, которое он работает, есть одинарная кавычка.
НО, как только двойные кавычки включены во входной контент, который не может вернуть результаты автозаполнения.
Благодарим вас за помощь, указав, где мне не удается передать кавычки.Спасибо
- Просто, чтобы сделать его более понятным, код работает, если имя клиента « Intel » или « Int'el », но не удается, когда клиентимя " Int" el"
Вот функция JAVA SCRIPT , которая отправляет и получает данные из PHP:
!--Script Auto fill ltd by customer -->
<script type="text/javascript">
function updatefrm() {
setTimeout(function(){
var customer = $('#customer').val();
if ($.trim(customer) !='') {
$.post('customerfill.php', {customer: customer}, function(data) {
$('#customerupdate').val(data['customer']);
$('#ltdupdate').val(data['ltd']);
});
}
}, 10);
}
</script>
Вот код PHP , который получает данные POST, выполняет запрос и отправляет обратно массив для автоматического заполнения JAVA SCRIPT:
<?php
if (!empty($_POST['customer'])) {
$DB_Server = "localhost"; // MySQL Server
$DB_Username = "XXXX"; // MySQL Username
$DB_Password = "XXXX"; // MySQL Password
$DB_DBName = "XXXXXXXX"; // MySQL Database Name
$Connect = @mysql_connect($DB_Server, $DB_Username, $DB_Password) or die("Failed to connect to MySQL:<br />" . mysql_error() . "<br />" . mysql_errno());
// Select database
$Db = @mysql_select_db($DB_DBName, $Connect) or die("Failed to select database:<br />" . mysql_error(). "<br />" . mysql_errno());
mysql_query('SET NAMES utf8');
mysql_query('SET CHARACTER SET utf8');
$safe_name = mysql_real_escape_string(trim($_POST['customer']));
$query = mysql_query(" SELECT * FROM customers WHERE customer = '". $safe_name ."' LIMIT 1 ");
if (mysql_num_rows($query) > 0) {
$row = mysql_fetch_assoc($query);
json($row);
} else {
json(null);
}
}
function json ($array) {
header("Content-Type: application/json");
echo json_encode($array);
}