Я принимаю постоянный номер счета (pan) от пользователя и перед отправкой, я делаю проверку, если номер панорамирования уже существует в db. Он работает, и я также получаю сообщение об ошибке, что pan no уже зарегистрирован Если я игнорирую ошибку и не меняю номер панорамирования и продолжаю отправлять, он попадает в базу данных.Данные сохраняются в db во время ошибки
Я заметил, что после проверки проверки введенное число остается там. Я хочу знать, как я могу освободить поле ввода после получения ошибки. Если он остается пустым, кнопка отправки не будет работать. Итак, как я могу удалить введенный номер из поля ввода после появления ошибки и как я могу получить фокус курсора в поле ввода?
Благодаря
HTML
<input name="panno" type="text" id="panno" style="width:219px;" />
<span id="pan_status1"></span>
ФУНКЦИЯ
$("#panno").change(function()
{
$("#pan_status1").html('<img src="images/9.gif" align="absmiddle"> Loading Please wait...');
var id=$(this).val();
var dataString = 'panno='+ id;
$.ajax
({
type: "POST",
url: "checkp.php",
data: dataString,
cache: false,
success: function(html)
{
$("#pan_status1").html(html);
}
});
});
CHECKP.PHP
<?php
require("connection/config.php");
if(isset($_POST['panno']))
{
$mpan = $_POST['panno'];
$sql_check = mysql_query("select * from register where pan_no='".$mpan."'") or die(mysql_error());
if(mysql_num_rows($sql_check))
{
echo '<font color="red"><STRONG>'.$madhar.'</STRONG> is already registered.</font>';
$response = array();
$response['successStatus'] = 'error';
$response['responseMessage'] = $erroMessage;
header('Content-type: application/json');
echo json_encode($response);
}
else
{
$response = array();
$response['successStatus'] = 'success';
$response['responseMessage'] = $erroMessage;
header('Content-type: application/json');
echo json_encode($response);
}
}
?>
EDIT
Я сделал изменения в файле PHP. Теперь, когда я ввожу номер панорамирования и если введенный номер сковорода не существует в базе данных, я получаю следующий выход рядом с кнопкой ввода
{"successStatus":"success","responseMessage":null}
и если он существует, я получаю следующее
123456789012 is already registered.{"successStatus":"error","responseMessage":null}
Теперь, когда статус захватываются, как я могу сделать поле ввода пустым, если состояние ошибки
Я не хочу, чтобы показать вывод HTML/JSON, если состояние успеха и хочет показать ТОЛЬКО html, если статус - это ошибка.
Вы должны проверить серверную сторону * всегда *. –
[Little Bobby] (http://bobby-tables.com/) говорит *** [ваш скрипт подвержен риску инъекций SQL.] (Http://stackoverflow.com/questions/60174/how-can- я-не допустить, SQL-инъекцию-в-PHP) ***. Даже [избегая строки] (http://stackoverflow.com/questions/5741187/sql-injection-that-gets-around-mysql-real-escape-string) небезопасно! –
*** Пожалуйста, прекратите использование 'mysql_ *' функций (http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php). *** [Эти расширения ] (http://php.net/manual/en/migration70.removed-exts-sapis.php) были удалены в PHP 7. Узнайте о [подготовленном] (http://en.wikipedia.org/wiki/Prepared_statement) для [PDO] (http://php.net/manual/en/pdo.prepared-statements.php) и [MySQLi] (http://php.net/manual/en/mysqli.quickstart.prepared- statements.php) и подумайте об использовании PDO, [это действительно довольно легко] (http://jayblanchard.net/demystifying_php_pdo.html). –