Mysql
 sql >> Base de données >  >> RDS >> Mysql

la table met à jour les espaces vides lorsque l'utilisateur n'entre rien dans la zone de texte

Vous utilisez $_POST pour 'name/pos/dep/tag' et $_GET pour 'emp' donc vous n'obtenez probablement pas les valeurs. Changez les GET en POST - cela devrait le faire. Puisque vous mettez à jour, je ' d recommande d'utiliser POST plutôt que GET. GET est plus approprié pour la recherche.

En outre, vous pouvez placer toutes vos requêtes de mise à jour dans une seule requête de mise à jour. Comme ça.

$name = $_POST['name'];
$pos = $_POST['pos'];
$dep = $_POST['dep'];
$tag = $_POST['tag'];
$emp = $_POST['emp'];

$qry_start = "UPDATE gpl_employees_list SET ";
$where = " WHERE emp_id = $emp";
$fields = "";
$updates = "";

if($name){
  $updates .= " `emp_name` = $name,";
}
if($pos){
  $updates .= " `emp_pos` = $pos,";
}
if($dep){
  $updates .= " `emp_dep` = $dep,";
}
if($tag){
  $updates .= " `emp_tag` = $tag,";
}
$updates = substr($updates, 0, -1); //To get rid of the trailing comma.
$qry = $qry_start . $updates . $where;