배열 바꾸기 쿼리문 질문드립니다. 채택완료
</p>
<p>
$alls = " select count(*) as allcount from g5_write_test";
$results = sql_query($alls, true);
while ($rows = sql_fetch_array($results)) {</p>
<p> for($j=1; $j < $rows[allcount]; $j++){
$sql = "
select wr_11
from g5_write_test
where wr_id = '{$j}'
";
$result = sql_query($sql, true);
while ($row = sql_fetch_array($result)) {</p>
<p> $wr11 = explode('||',$row['wr_11']);
$count = count(explode('||',$row['wr_11']));
for($i=0; $i < $count; $i++){
if ($wr11[$i] == "사과/딸기") {
$wr11[$i] = "사과/딸기/포도";
} else {
$wr11[$i] = $wr11[$i];
}
$order_value[] = $wr11[$i];
}
$set_wr11 = implode('||', $order_value); </p>
<p> sql_query("update g5_write_test set wr_11 = '$set_wr11' where wr_id = '$j'");</p>
<p> }
}
}</p>
<p>
wr_11에 사과/딸기||수박/호박||상추/깻잎/시금치
와 같이 입력되어 있습니다.
여기에 사과/딸기를 사과/딸기/포도로 바꾸고자 합니다.
사과/딸기/포도||수박/호박||상추/깻잎/시금치
와 같이 모든 게시글을 변경할려고 합니다.
그냥 쉽게 생각해서 모든게시글의 개수를 구해서
해당 개수만큼 for문을 돌려서 그 안에서 wr_11의 배열만큼 또 for문을 돌려서
변경하면 되겠다.. 싶었었는데
에러가 나네요..
어떻게 수정을 해야 할까요?
답변 2개
wr_11에 사과/딸기||수박/호박||상추/깻잎/시금치
와 같이 입력되어 있습니다.
이렇게 입력되어 있다면 mysql replace 라는 함수가 있습니다.
update 바꿀테이블 set wr_11 = replace(wr_11,'사과/딸기||' , '사과/딸기/포도||'); 이렇게 한번에 바꿀 수 있습니다.
댓글을 작성하려면 로그인이 필요합니다.
추가 피해자 방지 https://sir.kr/conflictconsultation/245" rel="nofollow noreferrer noopener" target="_blank">https://sir.kr/conflictconsultation/245
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인