首页 > 解决方案 > 根据输入更新特定数据库?

问题描述

我不确定我是否在标题中正确询问,但这里是信息:

我有一个网站,以客户输入他们的 ID 号开头。然后,这会填充一个页面,他们可以在其中选择要发送给他们的产品。该页面有他们的姓名、邮寄信息等,以及一个提交按钮,该按钮将他们选择的选项发送到“主”数据库。

有没有办法根据他们的 ID 号开头来更新特定的数据库?例如,如果他们的 ID 号以 AB 开头,我希望更新“主”数据库。如果它以 XY 开头,我希望更新“masterXY”数据库。

每次我发布问题时我都会这么说,只是为了让大家知道我对 PHP、MySQL 等没有任何经验。我正在接替一个从不真正关心他的代码只要它工作的代码是什么样子的同事——所以如果这段代码看起来很糟糕,我深表歉意,因为我还不知道一个好的代码是什么样子的。

我认为这是您需要查看的代码,以便查看当前正在更新的数据库(但同样,我不太确定)。

if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "update")) {

    $updateSQL = sprintf("UPDATE master SET name=%s, company=%s, address=%s, address2=%s, city=%s, st=%s, zip=%s, phone=%s, email=%s, request=%s, product1=%s, product2=%s, remoteip=%s, lastchange=%s, source=%s, via=%s WHERE id=%s",

                         GetSQLValueString(($_POST['name']), "text"),
                         GetSQLValueString(($_POST['company']), "text"),
                         GetSQLValueString(($_POST['address']), "text"),
                         GetSQLValueString(($_POST['address2']), "text"),
                         GetSQLValueString(($_POST['city']), "text"),
                         GetSQLValueString(strtoupper($_POST['st']), "text"),
                         GetSQLValueString(strtoupper($_POST['zip']), "text"),
                         GetSQLValueString(strtoupper($_POST['phone']), "text"),
                         GetSQLValueString(strtoupper($_POST['email']), "text"),
                         GetSQLValueString($_POST['request'], "text"),
                         GetSQLValueString(isset($_POST['product1']) ? "true" : "", "defined","1","0", "int"),
                         GetSQLValueString(isset($_POST['product2']) ? "true" : "", "defined","1","0", "int"),
                         GetSQLValueString($REMOTE_ADDR, "text"),
                         GetSQLValueString($date, "date"),
                         GetSQLValueString($_SERVER['HTTP_USER_AGENT'], "text"),
                         GetSQLValueString($via, "text"),
                         GetSQLValueString($_POST['id'], "int"));


    mysql_select_db($database_numark, $mySQL);
    $Result1 = mysql_query($updateSQL, $mySQL) or die(mysql_error());
    $LOG2 = mysql_query("INSERT INTO log (date,site,ip,id_number,info) values ('$date','$SITE','$REMOTE_ADDR','$idnumber','Update and Request Submitted')");

    $insertGoTo = "/confirm.php";
    if (isset($_SERVER['QUERY_STRING'])) {
        $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
        $insertGoTo .= $_SERVER['QUERY_STRING'];
    }
    header(sprintf("Location: %s", $insertGoTo)); 
}

if(isset($_POST['idnumber'])){
    $idnumber = $_POST['idnumber'];
    $LOG1 = mysql_query("INSERT INTO log (date,site,ip,id_number,info) values ('$date','$SITE','$REMOTE_ADDR','$idnumber', 'ID Entered')");

   mysql_select_db($database_mySQL , $mySQL );
   $query_master = "SELECT * FROM master WHERE mixedme = '$idnumber'";
   $master = mysql_query($query_master, $mySQL ) or die(mysql_error());
   $row_master = mysql_fetch_assoc($master);
   $totalRows_master = mysql_num_rows($master);
}

标签: phpmysql

解决方案


推荐阅读