while($row = sql_fetch_array($result)){ 질문
본문
앞 페이지에서 제목, 본문, 옵션 등 여러가지를
$_POST로 받은 php 파일에서
// 멤버 테이블 정보를 가지고 와서
$sql = "select * from g5_member";
$result = sql_query($sql);
while($row = sql_fetch_array($result)){
$row에서 아이디, 경로 등을 받아서
$_POST로 받은 데이터를 이용하여
파일 업로드 및 파일 삭제 코드가 추가되어 있음
내부에서 사용자정의 함수 curl 등 몇개 실행함
}
이런 소스인데요.
중간에 첫줄만 실행되고 멈춥니다. 즉 1개는 잘 작동하는데 2번째로는 안가네요.
while($row = sql_fetch_array($result)){
print_r($row);
}
이렇게 하면 디비 멤버 테이블 정보는 잘 가지고 오는데
파일 업로드나 함수 몇개 실행하는데 거기서 while문이 멈추는 것 같아요.
for문으로 수정해도 안되네요. 1개는 정확하게 실행되는데 다음으로 안 넘어가네요
중간에 break문은 없고 함수는 return으로 값을 받는 것만 있는데
어떤 경우일까요?
아니면
그래서 편법으로 하려면 $_POST로 받은 데이터를 그대로 전달해서 페이지를 계속해서
새로 불러올까 하는데 $_POST를 form 태그로 모두 보내는 방법은 없나요?
아니면 일일히 내부에 키워드를 찾아서 전달해야 할까요?
원인을 찾는 방법도 모르겠어요. -.-
이런 증상 경험 하신 분 있으시면 도움 좀 주세요
답변 2
아마 $row 나 $result 를 중간에 다시 할당하는 부분이 있는거 같네요
쓰고보니 @그누위즈 님이 이미 쓰셨네요 ^^
중간에 함수 호출하면서 변하는거 같네요
$row, $result 이름을 유니크하게 바꿔서 해보셍
여기 부분의 소스들 중간중간에 echo '테스트';exit;
이런식으로 부분부분 중지하시면 어디까지 소스가 실행되는부터 살펴보셔야 하지싶습니다.