<分区>
我想在用户单击提交按钮时更新数千行,我的函数使用另一个函数来计算我要更新的字段。 我的问题是,当我尝试更新 5 行或 10 行之类的几行时,它工作正常,但是当我有 20 行或更多行时,执行代码需要很长时间,或者有时,它会显示很多我不知道的错误没有。 所以任何人都可以帮助我!
我的代码:
//----database connection
/* DATABASE CONFIGURATION */
define('DB_SERVER', 'localhost');
define('DB_PORT', '8090');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
define('DB_DATABASE', 'db_qvt');
function getDB(){
$dbhost=DB_SERVER;
$dbport=DB_PORT;
$dbuser=DB_USERNAME;
$dbpass=DB_PASSWORD;
$dbname=DB_DATABASE;
// Check connection
$dbConnection = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
mysqli_set_charset($dbConnection, "utf8");
return $dbConnection;
}
//------------ update user final score--------------//
function update_user_final_score($login, $pass_user, $final_score){
$sql_update="update users_answers set score_final = '$final_score' where login = '$login' and pass_user = '$pass_user'";
$res = mysqli_query(getDB(), $sql_update);
return $res;
}
//------------ calculate all users final scores--------------//
function update_all_users_final_score($login){
$users_client = get_users_answers($login);
for($i=0;$i<sizeof($users_client);$i++){
update_user_final_score($users_client[$i]['login'], $users_client[$i]['pass_user'], calculate_user_final_score($users_client[$i]['login'], $users_client[$i]['pass_user']));
}
}
//-- call the function
update_all_users_final_score($login);