db에 텍스트등록 에러나는 이유?

db에 텍스트등록 에러나는 이유?

QA

db에 텍스트등록 에러나는 이유?

본문

 https://github.com/sampotts/plyr

플레이어에서 제공하는 유튜브 재생기능을 사용해보려고 하는대

<div data-type="youtube" data-video-id="bTqVqk7FSmY"></div>

이런식으로 쓰고 유튜브 아이디칸에 아이디를 넣어주면 된다더군요,

그래서 유튜브 비디오 아이디를 받아서

<div data-type="youtube" data-video-id="'$you_id'"></div>

이런식으로 받은 youtue비디오 아이디를 소스에 넣어서

db에 저장하는 소스를 만들었는대 하얀하면이 뜨는대 무엇을 잘못한걸까요?

 

 

 

<tr>
    
    <th scope="row"><label for="it_video">여분필드(유튜브)</label></th>
        <td>
        <p>
        유튜브 주소를 저장하지 않으면 상품상세페이지에 출력하지 않습니다.<br>
        유튜브 미리 보기는 유튜브주소가 업로드된 경우에만 가능합니다.<br>
        유튜브주소를 변경하시려면 삭제 후 변경 가능합니다.<br></strong>        
    </p>
        <br>
        <p>
        <input type="text" name="it_youtube_id" id="text" maxlength="11"> <label for="text"> 유튜브동영상 아이디를 입력해주세요</label>
        <label for="it_video_del"><span class="sound_only">유튜브동영상</span>삭제</label><input type="checkbox" name="it_youtube_del" id="it_youtube_del" value="1">
        <td class="td_grpset">
        <?php if ($it['it_youtube_preview']) { ?>
        
        
        <label for="it_youtube_preview"><center><strong><p>유튜브동영상 미리 보기</p        
        <?php echo $it['it_youtube_preview']; ?> </label> <?php } ?>    </center>      
        </td>
        </p>
   </td>
   </tr>

 


$you_id = $it_youtube_id;
$you_1 = "<div data-type="youtube" data-video-id="'$you_id'"></div>"
$you_2 = "<div width='300' height='200' data-type="youtube" data-video-id="'$you_id'"></div>"
$sql = "update g5_shop_item set it_youtube= '$you_1', it_youtube_preview= '$you_2' where it_id='$it_id'";
sql_query($sql);

이 질문에 댓글 쓰기 :

답변 3

내용이 나오는지는 검증이 안되는상황이라.

잠시 코드만 이야기하면

 

위의 분들이 잘 해주셨느데

" 가 잘못된부분과

; 가 누락된 부분이 있어서 정리해서 다시 올립니다.


<?php
$you_id = $it_youtube_id;
$you_1 = "<div data-type='youtube' data-video-id='".$you_id."'></div>";
$you_2 = "<div width='300' height='200' data-type='youtube' data-video-id='".$you_id."'></div>";
$sql = "update g5_shop_item 
           set it_youtube= '".addslashes($you_1)."'
           , it_youtube_preview= '".addslashes($you_2)."' 
           where it_id='{$it_id}' ";
sql_query($sql);
?>

하얀화면은 php 오류가 난다는 말인거 같은데요?

sql 에러는 에러가 표시되죠 ..

모르긴 몰라도 세미콜론은 많이 빠졌네요


$you_1 = "<div data-type="youtube" data-video-id="'$you_id'"></div>"
$you_2 = "<div width='300' height='200' data-type="youtube" data-video-id="'$you_id'"></div>"

나시님께서 세미콜론도 잘못된것 같다고하셔서 수정했고 addslashes를 베원님께서 써야한다길래 수정해봤는대 여전히 하안화면이내요


$you_id = $it_youtube_id;
$you_1 = "<div data-type="youtube" data-video-id='".$you_id."'></div>"
$you_2 = "<div width='300' height='200' data-type="youtube" data-video-id='".$you_id."'></div>"
$sql = "update g5_shop_item set it_youtube= '".addslashes($you_1)."', it_youtube_preview= '".addslashes($you_2)."' where it_id='$it_id'";
sql_query($sql);

일단 sql 에러는 아니에요
"youtube" ==> youtube
이렇게 바꿔놓고 에러 안나는지 확인하시고
text 안에 ' , " <== 이걸 넣으려면 아마 방법을 찾으셔야 할겁니다.

addslashes 를 쓰셔야 합니다.

 


$you_id = $it_youtube_id;
$you_1 = "<div data-type="youtube" data-video-id="'$you_id'"></div>"
$you_2 = "<div width='300' height='200' data-type="youtube" data-video-id="'$you_id'"></div>"
$sql = "update g5_shop_item set it_youtube= '".addslashes($you_1)."', it_youtube_preview= '".addslashes($you_2)."' where it_id='$it_id'";
sql_query($sql);

나시님께서 세미콜론도 잘못된것 같다고하셔서 수정했고 addslashes를 베원님께서 써야한다길래 수정해봤는대 여전히 하안화면이내요


$you_id = $it_youtube_id;
$you_1 = "<div data-type="youtube" data-video-id='".$you_id."'></div>"
$you_2 = "<div width='300' height='200' data-type="youtube" data-video-id='".$you_id."'></div>"
$sql = "update g5_shop_item set it_youtube= '".addslashes($you_1)."', it_youtube_preview= '".addslashes($you_2)."' where it_id='$it_id'";
sql_query($sql);

답변을 작성하시기 전에 로그인 해주세요.
전체 123,732 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT