2017-02-04 5 views
0

나는 노래방 이벤트를위한 PHP 스크립트 작업을하고 있습니다. 스크립트는 searchterm을 제출 한 후 데이터베이스에서 사용 가능한 노래를 표시합니다. 사용자는 노래 제목을 클릭하여 노래를 대기열에 추가 할 수 있습니다. "대기열"은 다른 페이지에 표시 될 데이터베이스 테이블입니다.알림 상자 (확인 상자)에 아포스트로피 또는 쉼표가 작동하지 않습니다.

하지만 기능이 노래를 대기열에 추가하기 전에 노래 제목과 아티스트를 반복해야하는 확인 상자를 표시하고 싶습니다.

Here's 내 코드

echo "<a href=\"index.php?action=queue&id=$showid\" 
onclick=\"return confirm('Do you really want to sing $showtitle by 
$showartist?')\">$showtitle</a>"; 

그것은 일반적으로 작동하지만 문제는 지금 노래 제목에 "쉼표"또는 "아포스트로피"가 데이터베이스에 꽤 많은 노래가 있다는 것입니다 .

이 경우 확인 상자가 나타나지 않고 바로 노래가 대기열에 추가됩니다. 상자에 표시되는 노래 제목은 항상 다른 노래이므로 사용자가 클릭하는 노래에 따라 대체로 이러한 특수 문자를 대체하거나 이스케이프 처리해야합니다.

이것이 가능합니까? 따옴표

을 탈출

+0

PHP 고통에 대한 조리법입니다 자바 스크립트 인라인을 사용하지 않는 것입니다보십시오. – bishop

답변

1

필요는

$showtitle = addslashes($showtitle); 

제일 제안 자바 스크립트를 출력 HTML을 출력

+0

힌트를 보내 주셔서 감사 드리며 동작을 변경하지 않고 시도했습니다. 나는 내 코드를 변경하고 다른 방법으로 이것을 해결하려고 노력할 것이다. (그냥 PHP, mysql 등으로 시작했다.) .... 다시 한번 감사드립니다 ... – John982

관련 문제