Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Tabelle aktualisiert Leerzeichen, wenn der Benutzer nichts in das Textfeld eingibt

Sie verwenden $_POST für 'name/pos/dep/tag' und $_GET für 'emp', sodass Sie die Werte wahrscheinlich nicht erhalten. Ändern Sie die GETs in POST - das sollte reichen. Ich empfehle die Verwendung von POST über GET. GET ist besser für die Suche geeignet.

Außerdem können Sie alle Ihre Aktualisierungsabfragen in einer einzigen Aktualisierungsabfrage zusammenfassen. So.

$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;