2016-10-27 1 views
1

저는 약속 작성자를 프로그래밍 중입니다. 자바 스크립트가 이벤트를 생성하지 않고 일반 텍스트로만 코드를 인쇄하므로 여전히 모든 약속을 가져 오는 하나의 PHP 함수가 있습니다. SQL 데이터베이스와 내가 문제를 해결할 수있는 방법을 자바 스크립트 코드jquery foreach를 통해 이벤트를 생성합니다.

<script> 
    function getEventData() { 
    <?php 
     function showAppointments($von, $bis){ 
      $link = OpenDB(); 
      try { 
      $query = 'SELECT termin_id, client, dateFrom, dateTill, title, descri FROM termin WHERE dateFrom BETWEEN :von AND :bis'; 
      $statement = $link->prepare($query); 
      $statement->bindValue(':von', $von, PDO::PARAM_STR); 
      $statement->bindValue(':bis', $bis, PDO::PARAM_STR); 
      $statement->execute(); 

      $row = $statement->fetchAll(); 
      } 
      catch (PDOException $e) { 
       p($e); 
      } 
      CloseDB($link); 

      return $row; 
     } 
    if(empty($von) && empty($bis)) { 
       $von = date("Y.m.j",strtotime("monday this week")); 
       $bis = date("Y.m.j",strtotime("sunday this week")); 
      } 
      if(isset($_POST['last_week'])){ 
       $von = date("Y.m.j",strtotime("previous monday")); 
       $bis = date("Y.m.j",strtotime("previous sunday")); 
      } 
      if(isset($_POST['next_week'])){ 
       $von = date("Y.m.j",strtotime("next monday")); 
       $bis = date("Y.m.j",strtotime("next sunday")); 
      } 
      $rows = showAppointments($von, $bis); 

     echo "const appointments = ["; 
     for($i = 0; $i < sizeof($rows); $i++) { 
      $columns = array_values($rows[$i]); 
      echo "["; 

      for($j=0; $j< sizeof($columns); $j++){   
      echo "'".$columns[$j]."'"; 
      if($j < sizeof($columns)-1) echo ","; 
      } 
      echo "]"; 

    if($i < sizeof($rows)-1) echo ",";  
     } 

      echo "];"; 
    ?> 
then all events are generated by jquery and returned 

    return { 

      events:[ 

      $.each(appointments, function(index, row){ 

        eval("{'id':"+ row[0] + ",'client':"+ row[1] +",'start':" + new Date(row[2])+",'end': "+ new Date(row[3]) +",'title':'"+ row[4] +"','description':'"+ row[5] +"'}"); 

      }); 

      ]}} 
</script> 
의 foreach의 코드가 일반 텍스트로 인쇄됩니다

를 생성? 실제로 당신이 (Array.join을)를 Jquery.each 외부 이벤트를 시도하고 평가 후면 사용해야

{'id':1, 'start': new Date(year, month, day, 12), 'end': new Date(year, month, day, 13, 30),'title':'Lunch with Mike'} 
+0

잘 모르겠습니다. 브라우저에서 PHP 코드를 볼 수 있습니까? – Epodax

+0

PHP 코드가 보이지 않지만 jquery의 foreach 코드가 일반 텍스트로 인쇄됩니다 – Sparkm4n

+0

아직 질문이 나오지 않지만 jQuery/JS를 사용할 때마다 PHP가 실행될 것으로 기대하십니까? – Epodax

답변

1

같은 것을 인쇄해야합니다; JavaScript로 작동해야합니다.

+0

을 찾으려고했는데 단순히 일반 텍스트로 인쇄되었습니다. – Sparkm4n

관련 문제