0
필드 중 하나의 값을 기반으로 제한된 수의 항목을 가져 오는 SELECT 문이 있습니다. (즉, 주문 비율 15).PHP에서 SQL 배열의 값을 변경할 수 있습니까?
그러나 비교를하고 비율 값을 변경해야하며 결과적으로 원하는 결과가 변경 될 수 있습니다.
나는 (제한없이) 모든 것을 가져올 수 있고, 비율을 변경하고, 다시 정렬하고, 필요한 숫자 만 처리 할 수 있습니다. 그러나 PHP 결과 배열에서 값을 변경할 수 있는지 여부는 알 수 없습니다. 내가 사용하고 있습니다 :
$query_raw = "SELECT dl.dragon_list_id, dl.dragon_id, dl.dragon_name, dl.dragon_level, d.type, d.opposite, d.image, dr.dragon_earn_rate
FROM dragon_list dl
LEFT JOIN dragons d ON d.dragon_id = dl.dragon_id
LEFT JOIN dragon_rates dr ON dr.dragon_id = dl.dragon_id
AND dr.dragon_level = dl.dragon_level
WHERE dl.dragon_id IN (
SELECT dragon_id
FROM dragon_elements
WHERE element_id = 3
)
AND dl.dragon_list_id NOT IN (
SELECT dh.dragon_list_id
FROM dragon_to_habitat dh, dragon_list dl
WHERE dl.user_id = 1
AND dh.dragon_list_id = dl.dragon_list_id
AND dl.is_deleted = 0
)
AND dl.user_id = " . $userid . "
AND dl.is_deleted = 0
ORDER BY dr.dragon_earn_rate DESC, dl.dragon_name
LIMIT 15;";
$query = mysqli_query($link, $query_raw);
if (!$query) {
echo "DB Error, could not query the database\n";
echo 'MySQL Error: ' . mysqli_error($link);
exit;
}
$d = mysqli_fetch_array($d_query);
정확히 무엇을 요구하고 있습니까? '$ d'의 값을 변경하고 데이터베이스로 업데이트 하시겠습니까? 그렇다면 별도의 SQL 문을 사용하여 데이터베이스를 업데이트해야합니다. PHP에서 결과 세트를 변경하면 자동으로 데이터베이스로 돌아 가지 않습니다. – vhu
https://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php?rq=1 – vhu
데이터베이스 자체를 업데이트하고 싶지 않습니다. 데이터베이스에는 기본 요율이 있으며 특정 기준에 따라 새 요율을 계산해야합니다. 따라서 데이터베이스에서 새 비율은 필요 없지만 결과 배열을 변경 한 다음 배열을 재정비하고 재설정하면 초기 while 루프가 시작되어 작동합니다. – Dizzy49