2014-01-25 3 views
0

내 php 사이트에 데이터 선택기 달력을 삽입하려고합니다. DatePicker의 선반에서 가져온이 코드는 미리 강조 표시된 날짜를 선택할 수있게 해줍니다. 필요한 날짜가있는 db 테이블에 목록이 있으므로 좋을 것입니다.JQuery에서 PHP 삽입하기

그러나 필자는 스크립트 내에 php를 포함시키는 방법을 찾는 데 성공하지 못했습니다. 다음과 같이

원래 일정 스크립트입니다 :

<script type='text/javascript'> 

$(function() { 
$("#txtDate").datepicker({dateFormat: 'yy-mm-dd'}); 
}); 

$(document).ready(function() { 

    var SelectedDates = {}; 
    SelectedDates[new Date('02/24/2014')] = new Date('02/24/2014'); 
SelectedDates[new Date('03/10/2014')] = new Date('03/10/2014'); 

    $('#txtDate').datepicker({ 
     beforeShowDay: function(date) { 
      var Highlight = SelectedDates[date]; 
      if (Highlight) { 
      return [true, "Highlighted", Highlight]; 
     } 
     else { 
      return [true, '', '']; 
     } 
    } 
}); 
}); 
    </script> 
내가 SelectedDates에 갈 날짜의 긴 목록을 선택할 수 있도록하고 싶습니다

[새 날짜를 (/ 2014 ''03/10)] = 새 날짜 ('03/10/2014 '); 다음과 같이

그래서 내 원래 생각은 할이었다.

$(document).ready(function() { 
     var SelectedDates = {}; 

    <?php 
$query = "SELECT eventDate FROM database.calendar WHERE tag='R' AND competition='1'"; 
$result = mysql_query($query); 
while ($row = mysql_fetch_row($result)) { 
    $eventdate = $row[0]; 

SelectedDates[new Date('$eventdate')] = new Date('$eventdate'); 
} 
?> 

는 슬프게도,이 작동하지 (그리고 어느 쪽도 PHP 내에서 태그를 다시 추가하기 위해 다양한 시도 중 하나를 수행하지 않습니다

? 어떤 생각이 도와 주셔서 너무 감사

+1

'echo' 연산자를 잊어 버렸습니다. 하지마? –

+1

[** 새 코드 **에서 mysql_ * 함수를 사용하지 마십시오. (http://bit.ly/phpmsql). 그들은 더 이상 유지되지 않으며 [공식적으로 사용되지 않습니다] (http://j.mp/XqV7Lp). [** 빨간색 상자 **] (http://j.mp/Te9zIL)를 참조하십시오. 대신 [* prepared statements *] (http://j.mp/T9hLWi)에 대해 알아보고 [PDO] (http://php.net/pdo) 또는 [MySQLi] (http://php.net/)를 사용하십시오. mysqli) - [이 기사] (http://j.mp/QEx8IB)는 어떤 결정을 내리는 데 도움이 될 것입니다. PDO를 선택하면 [여기는 좋은 튜토리얼입니다] (http://j.mp/PoWehJ). –

+0

팁 주셔서 감사합니다! 아직 배우기는하지만, 끝까지 따라하고 내 프로젝트에 가장 적합한 것이 무엇인지 알아 내려고 노력할 것입니다. –

답변

1

(코멘트에서 언급 또는 echo를 사용하는) 당신은 출력 자바 스크립트로 PHP 태그를 닫을 필요!

$(document).ready(function() { 
    var SelectedDates = {}; 

    <?php 
    $query = "SELECT eventDate FROM database.calendar WHERE tag='R' AND competition='1'"; 
    $result = mysql_query($query); 
    while ($row = mysql_fetch_row($result)) { 
     $eventdate = $row[0]; 
     ?> 
     SelectedDates[new Date('<?php echo $eventdate; ?>')] = new Date('<?php echo $eventdate; ?>'); 
     <?php 
    } 
    ?> 
}); 

나는 당신이하려고하는 것이 실제로 이상하지 않다는 것을 언급해야하지만. PHP while 루프를 별도로 수행하여 배열로 가져오고 json_encode을 얻습니다.

+0

감사합니다. 바로 시도하겠습니다. 아직도 지나치게 어레이에 익숙하지는 않지만 점점 더 복잡해지고있는 것 같습니다. 곧 수업을위한 것입니다! –