Живая проверка добавления / обновления данных в таблице php, ajax, javascript

Может помочь мне решить это?

У меня есть таблица, и я добавил 2 кнопки для добавления или обновления информации.

Я хочу сделать проверку в поле «описание», где ** вы можете писать буквы и не более 255 символов, а в поле "name" вы можете писать менее 50 символов. Во всяком случае, я не могу нажать кнопку «сохранить» или «добавить» соответственно (кнопка заблокирована, пока все не будет правильно).

Кроме того, страница должна показывать «В режиме реального времени (до нажатия кнопки) ошибки в каждом поле».

Вот мой код, добавляя новую информацию в таблицу:

 <?php include('connect.php'); $error=""; if(isset($_POST['btnsave'])) { $career_id=$_POST['carrera']; $name=$_POST['txtname']; $description=$_POST['txtdescription']; $hourss=$_POST['txthours']; if($_POST['txtid']=="0") { $a_sql=mysql_query("INSERT INTO subjects VALUES('','$career_id','$name','$description','$hourss')"); if($a_sql) { header("location:index.php");// } }else{ echo "Update"; } } $sqlm = mysql_query("SELECT * FROM careers"); $options = ""; while($result = mysql_fetch_array($sqlm)){ $options .= "<option value='".$result['id']."'>".$result['name']."</option>"; } ?> <h2 align="center">ADD NEW SUBJECT</h2> <form method="Post"> <table align="center"> <tr> <td>Career:</td> <td><select name='carrera'><?php echo $options; ?></select><input type="hidden" name="txtid" value="0" /></td> </tr> <tr> <td>Name:</td> <td><input type='text' name='txtname'/></td> </tr> <tr> <td>Description:</td> <td><input type='text' name='txtdesription'/></td> </tr> <tr> <td>Hours:</td> <td> <select name='txthours'/> <option <?php if($hourss=='1') echo 'selected' ; ?> value="2">2 (two)</option> <option <?php if($hourss=='1') echo 'selected' ; ?> value="4">4 (our)</option> <option <?php if($hourss=='1') echo 'selected' ; ?> value="6">6 (six)</option> <option <?php if($hourss=='1') echo 'selected' ; ?> value="8">8 (eight)</option> <option <?php if($hourss=='1') echo 'selected' ; ?> value="10">10 (ten)</option> </select> </td> </tr> <tr> <td></td> <td><input type='submit' value=save name='btnsave'/></td> </tr> </table> </form> 

И другой код обновляет информацию в таблице:

 <?php include('connect.php'); $error=""; if(isset($_GET['edit'])) { $ident=$_GET['iden']; $row=mysql_query("SELECT * FROM subjects WHERE id=$ident"); $st_row=mysql_fetch_array($row); } ?> <h2 align="center">UPDATE SUBJECT</h2> <form method="Post" action=''> <table align="center"> <tr> <td>Career:</td> <td><input type='text' name='txtcarreras_id' value="<?PHP echo $st_row['career'] ?>"/></td> </tr> <tr> <td>Name:</td> <td><input type='text' name='txtnombre' value="<?PHP echo $st_row['name'] ?>"/></td> </tr> <tr> <td>Description:</td> <td><input type='text' name='txtdescripcion' value="<?PHP echo $st_row['description'] ?>"/></td> </tr> <tr> <td>Hours:</td> <td><input type='text' name='txtcarga_horaria' value="<?PHP echo $st_row['hours'] ?>"/></td> </tr> <tr> <td></td> <td><input type='submit' value="save" name='btnsave'/></td> </tr> </table> </form> <?php if(isset($_POST['btnsave'])) { $career_id=$_POST['txtcarreras_id']; $name=$_POST['txtnombre']; $description=$_POST['txtdescripcion']; $hours=$_POST['txtcarga_horaria']; $a_sql=mysql_query("UPDATE materias SET career='$career_id', name='$name', description='$description', hours='$hours' WHERE id='$ident'"); if($a_sql) { header("location:index.php"); } } ?> 

Я знаю, есть много способов решить это, но я хочу самый лучший метод!

Надеюсь, ты поможешь мне 🙂

Благодаря!

Solutions Collecting From Web of "Живая проверка добавления / обновления данных в таблице php, ajax, javascript"

Вы можете сделать это с помощью Javascript. С JQuery или другой библиотекой это еще проще.

Использование jQuery:

 $('input[name=txtname]').keyup(function() { if ($(this).val().length < 50) { // Do Error stuff here } else { // Remove error stuff here } }); 

Если у вас есть jQuery и используется вышеперечисленный обработчик событий keyup, он должен отображаться по мере ввода.