데이터베이스에 배열을 추가하고 싶습니다. db (예 : health
및 money
)의 값이 변경되었는지 확인하는 함수를 설정했습니다. 값이 원본과 다른 경우 $db
배열에 새 값을 추가합니다. 이처럼 $db['money'] = $money_input + $money_db;
.배열을 mysql 데이터베이스에 삽입 PHP
function modify_user_info($conn, $money_input, $health_input){
(...)
if ($result = $conn->query($query)) {
while ($user = $result->fetch_assoc()) {
$money_db = $user["money"];
$health_db = $user["health"];
}
$result->close();
//lag array til db med kolonnene som skal fylles ut som keys i array
if ($user["money"] != $money_input){
$db['money'] = $money_input + $money_db;
//0 - 20
if (!preg_match("/^[[0-9]{0,20}$/i", $db['money'])){
echo "error";
return false;
}
}
if ($user["health"] != $health_input){
$db['health'] = $health_input + $health_db;
//0 - 4
if (!preg_match("/^[[0-9]{0,4}$/i", $db['health'])){
echo "error";
return false;
}
if (($db['health'] < 1) or ($db['health'] > 1000))
{
echo "error";
return false;
}
}
$db
의 키는 데이터베이스에있는 열을 나타냅니다. 이제 배열 $db
의 키를 가져 와서 db에 삽입하는 함수를 만들고 싶습니다. 이 같은 ?
$query = "INSERT INTO `main_log` (`id` , ";
foreach(range(0, x) as $num) {
$query .= array_key.", ";
}
$query = substr($query, 0, -3);
$query .= " VALUES ('', ";
foreach(range(0, x) as $num) {
$query .= array_value.", ";
}
$query = substr($query, 0, -3);
$query .= ")";