채택완료

write_update.skin.php 업데이트문 따옴표 좀 봐주세요 ㅠㅠ

2015-06-05 (금) 16:34:34 4,541

wr_31 에서 wr_55 까지

필드를 한꺼번에 업뎃하려고 하다보니 잘 안되네요 ㅠㅠ

어디가 문제인가요? 예제보고 따라한건데 너무 어렵습니다. ㅠㅠ 

아무래도 식이나 따옴표 "" '' 이 쪽에 문제가 있는게 아닌지요

고수님들 팁좀 주세요~ ㅠ

Copy
for ($i=31; $i<56; $i++) { $columns .= ', wr_'.$i." = '".${'wr_'.$i}."'"; $sql = " update $write_table set ".$columns." where wr_id = '$wr_id' ";  sql_query($sql); }​

 

 

그리고 $columns .= 이 부분에서 = 앞에 있는 . <===(점) 이거는 어떤 뜻인가요?

가끔씩 보이길래 궁금합니다.

|

답변 7개

채택된 답변
+20 포인트
2015-06-05 (금) 17:56:12

<?

$columns = " wr_31 = '$wr_31'";  

for($i=32; $i<56; $i++)  {

    $columns .= ', wr_'.$i." = '".${'wr_'.$i}."'";    

}

// 필드 연결 시켰으니 여기서 update 한번만 수행

$sql = " update $write_table set ".$columns." where wr_id = '$wr_id' ";  

sql_query($sql);​​ 

?>

테스트 해 보세요.

PHPㅡASP프로그래머님 사노라가노라님 모두 답변 감사합니다.

진심으로 정말정말 감사드립니다.

좋은 팁, 소종한 지식 배워갑니다~~~~

2015-06-05 (금) 17:39:38

해당 파일의 상단에 

아래와 같은 common.php 파일은 include 는 하셨는지요?

<?

$g4_path = '..'; // common.php 까지의 상대 경로

include_once("$g4_path/common.php");

?> 

Copy
for ($i=31; $i<56; $i++) {  if ($i == 31) {   $columns = " wr_".$i." = '".${'wr_'.$i}."'";  } else {   $columns .= ", wr_".$i." = '".${'wr_'.$i}."'";  }   $sql = " update $write_table set ".$columns." where wr_id = '$wr_id' ";   sql_query($sql);​}​

 

요로코롬 해줬는데요 역시 내부서버오류 에러가..ㅠㅠ

저 부분을 빼면 잘 등록되는데 말이죠....흠...

제가 뭘 잘못했는지 주신 코드 참고해서 잘 찾아보겠습니당.

고맙습니다.

2015-06-05 (금) 17:08:31

보여주신 코드를 아래 코드로 수정해 보세요.

"(쌍다옴표) 처리와 if 문 처리에 주의하시면 됩니다.^^ 

for ($i=31; $i<56; $i++) {

if ($i==31) 

$columns = " wr_".$i." = '".${'wr_'.$i}."'";

else

$columns .= ", wr_".$i." = '".${'wr_'.$i}."'";

$sql = " update $write_table set ".$columns." where wr_id = '$wr_id' ";

      sql_query($sql);

}

PHPㅡASP프로그래머님 답변고맙습니다.

그런데 오류가 나면서 입력이 되질 않는데 어떻게 수정해야할까요 ㅠㅠ​

2015-06-05 (금) 16:58:53

$columns .= ', wr_'.$i." = '".${'wr_'.$i}."'";


는 아래 코드를 의미합니다.


$columns $columns​ . ', wr_'.$i." = '".${'wr_'.$i}."'";

 

답변을 작성하려면 로그인이 필요합니다.